System and method for improving a basketball player&#39;s shooting through a shots-made challenge

ABSTRACT

Systems and methods for assisting a user with creating a custom shots-made basketball practice arrangement are provided. A detector detects made basketball shots. A user interface receives a user selection of a subset of pass receipt locations for a custom shots-made basketball practice arrangement located about a basketball playing surface. A control system receives data indicating the user selection and a number of shots to be made and commands an ejector to launch basketballs to a particular one of the pass receipt locations in the subset until data is received indicating that the selected number of shots to be made are made at the particular one of said plurality of pass receipt locations, cease launching the basketballs to the particular one of the pass receipt locations, and begins launching basketballs to a second particular one of the pass receipt locations in said subset.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a divisional of U.S. patent application Ser. No.17/132,603 filed Dec. 23, 2020, which is a continuation of U.S. patentapplication Ser. No. 16/989,408 filed Aug. 10, 2020, which is acontinuation of U.S. patent application Ser. No. 14/688,354 filed Apr.16, 2015, now issued as U.S. Pat. No. 10,737,162, which is acontinuation of U.S. patent application Ser. No. 13/529,917 filed Jun.21, 2012, now issued as U.S. Pat. No. 9,017,188, which is acontinuation-in-part of U.S. patent application Ser. No. 12/420,122,filed Apr. 8, 2009, now issued as U.S. Pat. No. 8,206,246. U.S. patentapplication Ser. No. 14/688,354 is also a continuation of U.S. patentapplication Ser. No. 13/529,903 filed Jun. 21, 2012, now issued as U.S.Pat. No. 9,233,292, which is a continuation-in-part of U.S. patentapplication Ser. No. 12/420,122, filed Apr. 8, 2009, now issued as U.S.Pat. No. 8,206,246, all of which are incorporated herein by referenceand made a part hereof.

BACKGROUND OF THE INVENTION 1. Field of the Invention

This invention relates to a system and method for improving a player'sshooting and includes a detection and measurement system for detecting,measuring or calculating shooting statistics (such as made shots, entryangle and release angle, get-off or release speed, measurements ofdistance, hold time or release time, degree of arc and the like) anddata regarding a player's shooting.

2. Description of the Related Art

In the past, various devices have been used to throw basketballs at aplayer so that the player can practice shooting the basketballs from alocation and toward a basketball hoop on a basketball backboard. Severaldevices are offered by the assignee of the present application andmarketed under the trademark THE GUN. For example, The Gun 6000 Seriesavailable from the assignee hereof provides a player with a highperformance ejector that a player and his or her coach can use duringshooting practice. Other ball throwing devices are also available, suchas the Dr. Dish™ product available from Airborne Athletics, Inc. ofBelle Plaine, Minn., that are used during basketball practice.

One problem or deficiency of the prior art devices is that while theycan be programmed to eject basketballs toward a player at a particularlocation, they were not capable of challenging the shooter's accuracyby, for example, making the shooter successfully shoot a number ofshots, either consecutively or non-consecutively, at one location beforethe ejector caused balls to be ejected or thrown to the next spot orlocation. Moreover, the devices fail to simulate a playing environmentwherein a player feels pressure or a pressure-simulated is provided.

In shooting systems of the past, a launcher may launch balls to variouspositions on the basketball floor for shooting by a player. The playerwould then shoot the balls. In general, there were no means or devicesfor recording data associated with the shots and passes to the player,such as the distance from the launcher that the player was positioned,the arc of the player's shot after the player received the basketballand whether the player made the shot or missed the shot. There was alsono means provided for recording the time it took to launch the ball tothe player, a time that it took the player to get the shot off and thenthe time it took for the shot to travel to the basket, all of which canbe important data and statistics for improving the player's shooting.

Moreover, there have been no means or systems or methodologies in thepast for providing an automated system for repeating the same shot tothe same player, multiple players from the same team or even playersfrom different teams and then comparing the shooting data and statisticsfor the players.

The basketball practice systems of the prior art also lack the abilityto track, measure or record the shooting distance and/or a shootinglocation (such as a shooting location along a vector associated with abasketball hoop) and, therefore, are incapable of providing comparablemeasurements or statistics for comparison.

There is, therefore, a need for a system and method for not onlyimproving the player's efficiency in shooting the basketball, but alsofor providing a system and method for repeatedly launching the same shotto the same or different players so that data and statistics, such asdata and statistics relative to the shots that the player made, missesand the like, and to provide the player, coaches and other interestedpersons the ability to compare statistics by the same player, bydifferent players on the same team or by different players fromdifferent teams.

SUMMARY OF THE INVENTION

One object of an embodiment is to provide a system and process forimproving a player's shooting ability.

Another object is to provide a system and method for challenging ashooter.

Still another object is to provide a system and method for monitoring aplayer's shooting performance, such as shots made in a row and/or totalcumulative shots made.

Another object of the invention is to provide a system and method fordetermining when a basketball that has been shot by a player has beenmade or has been missed.

Another object of the invention is to provide a system and method forcomparing statistics regarding shots by a player.

Still another object of the invention is to provide a system and methodfor gathering data and statistics regarding shots from different playerson the same team, the same player, or different players from differentteams.

Yet another object of the invention is to provide a system and methodfor comparing data generated by at least one or a plurality of players,regardless of whether those players are on the same or different teamsand/or providing means for accessing that comparison data over theinternet.

Still another object of the invention is to provide means fordownloading, exporting, saving (on a permanent or portable storagedevice, such as a USB drive) the data and statistics, including thecomparison data and statistics, for at least one or a plurality ofplayers.

Still another object is to provide a radar or a Doppler measurementsystem to measure or capture a distance or location from a basketballhoop or launcher that a player caught the ball from.

Still another object is to provide a detection or measurement systemthat measures not only the distance the ball was caught from that isalso adapted to measure, detect or calculate at least one or a pluralityof a release time of the ball, an arc of the shot, a release angle, anentry angle or a horizontal or vertical velocity of the ball.

A system for assisting a user with creating a custom shots-madebasketball practice arrangement is provided. An ejector launchesbasketballs toward each of a plurality of pass receipt locations locatedat a basketball playing surface. A detector, such as a photo eye,detects made basketball shots. A user interface receives a userselection of a subset of said plurality of pass receipt locations forsaid custom shots-made basketball practice arrangement. A controlsystem, in an automated fashion, receives data from said user interfaceindicating said user selection and a number of shots to be made at eachof said plurality of pass receipt locations in said custom basketballshots-made practice arrangement, and commands said ejector to launchsaid basketballs to a particular one of said plurality of pass receiptlocations in said subset until data is received from said detectorindicating that said number of shots is made at said particular one ofsaid plurality of pass receipt locations and subsequently and inresponse, ceases launching basketballs to said particular one of saidplurality of pass receipt locations, and instead begins launchingbasketballs to a second particular one of said plurality of pass receiptlocations in said subset.

The user interface may receive a revisionary user selection indicatingrevision of said custom basketball shots-made practice arrangementwhereby said subset is revised to exclude at least one of said formerlyincluded ones of said plurality of pass receipt locations and include atleast one new one of said plurality of pass receipt locations prior toinitiating the custom basketball shots-made practice arrangement, andsaid control system receives said further user selection from said userinterface and command said ejector to initiate said custom basketballshots-made practice arrangement in accordance with said further userselection instead of the user selection.

The user interface may include a number of selectable pass receipt inputlocations provided at said user interface in a manner which is visuallycongruous with said plurality of pass receipt locations on a one-to-onebasis. The user interface may include a visual depiction of basketballcourt elements comprising a three-point arc where said selectable passreceipt input locations are spaced along said three-point arc. Theselectable pass receipt input locations may be configured forindividual, direct, and physical selection by said user at said userinterface by touch. Each of said selectable pass receipt input locationsmay comprise a button which is visible prior to selection. Thebasketball court elements may comprise a base line and at least part ofa key of a regulation basketball court, wherein said selectable passreceipt input locations are arranged in relation to said base line andsaid at least part of the key to visually correspond with said pluralityof pass receipt locations located at said basketball playing surface.The control system may be configured to track an order in which saidselectable pass receipt input locations in said subset are selected andcommand said ejector to launch said basketballs towards each of saidplurality of pass receipt locations in said subset in said non-serialorder. The user interface may be configured to visibly indicate each ofthe selectable pass receipt input locations selected by said user atsaid user interface to form part of said subset for said customshots-made basketball practice arrangement at each of said selectablepass receipt input locations in said subset.

A report generator in electronic communication with said detector andsaid control system may be configured to generate a report indicatinguser success in making basketball shots at each of said plurality ofpass receipt locations in said subset. The report may comprisepercentages of successfully made shots for each of said plurality ofpass receipt locations in said subset visually depicted in relation to asecond visual depiction of said three-point line at positions visuallycorresponding with said plurality of pass receipt locations in saidsubset. A doppler measurement system may be in electronic communicationwith said control system and configured to determine, for each of saidbasketballs launched by said ejector, a height of shot, a release angle,and an entry angle into a hoop of said basketball goal.

A selectable shots-per-location input area may be provided at said userinterface for receiving a user selection of a number of basketballs tobe passed to each of said plurality of pass receipt locations in saidsubset, wherein said control system is configured to receive said userselection of said number of basketballs to be passed to each of saidplurality of pass receipt locations in said subset and command saidejector to pass said selected number of basketballs to a given one ofsaid plurality of pass receipt locations in said subset before moving onto a next one of said plurality of pass receipt locations in saidsubset. A selectable time delay input area may be provided at said userinterface for receiving a user selection of a number of seconds betweenpasses of said basketballs to said plurality of pass receipt locationsin said subset, wherein said control system is configured to receivesaid user selection of said number of seconds between passes of saidbasketballs and command said ejector to wait said selected number ofseconds after launching a given basketball before launching a nextbasketball.

The detector may be coupled to a rim of a basketball goal. A collectionnet assembly for collecting said basketballs as said basketballs arethrown towards said basketball goal and returning said collectedbasketballs to said ejector for launching may be provided. Said ejector,said collection net assembly, and said user interface are connected to aframe.

These and other objects and advantages of the invention will be apparentfrom the following description, the accompanying drawings and theappended claims.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS

FIG. 1 is a perspective view of a system in accordance with oneembodiment of the invention where a player is shooting a basketball froma first position at a playing area;

FIG. 2 is a view similar to FIG. 1 after the player has successfullyperformed one or more shooting accuracy routines at a first position(such as FIG. 9 and FIG. 1 ) and after an ejector has automaticallypivoted to eject or throw a basketball to another position, such asposition 16 in the illustration;

FIG. 3 is a view showing the layout of FIGS. 3A-3D;

FIGS. 3A-3D are views of a user interface or display in accordance withone embodiment of the invention;

FIG. 4 is an enlarged view showing details of a display shown in FIG. 1;

FIG. 5 is a simplified view of a plurality of basketballs made in a rowin the simplified illustration;

FIG. 6 is a view of various statistics and data and a printout for theplayer over a preselected period, illustrating the player's percentageof made shots relative to total shots at one or more of each of theplurality of different locations;

FIG. 7 is a schematic of a challenge shooting accuracy main procedureroutine;

FIG. 8 is a schematic of a challenge shooting accuracy routine whereinmultiple shots must be made in a row;

FIG. 9 is a schematic of a challenge shooting accuracy routine whereinmultiple shots must be made at a particular location, but notnecessarily in a row;

FIG. 10 is a perspective view of a system in accordance with anotherembodiment of the invention where a basketball is launched to a playerand the player shoots the basketball from a position on the basketballfloor;

FIG. 11 is a partial fragmentary view showing a throwing arm andvibration limit sensor in the embodiment shown in FIG. 10 and the playershoots from a distance;

FIGS. 12A-12C illustrate a Doppler procedure or algorithm for generatingvarious Doppler statistics;

FIGS. 13A-13I are various formulas, calculations and algorithms used togenerate Doppler measurements in the embodiment being illustrated;

FIG. 14 is a simplified schematic of the Doppler circuit shown in FIGS.15A-15D;

FIGS. 15A-15D are one form of a Doppler circuit used in the embodimentshown in FIG. 10 ;

FIG. 16 is an overall view of the use of the embodiment shown in FIG. 10;

FIG. 17 is a general procedure and method for a coach to register theejector;

FIG. 18 is an illustrative procedure for creating a roster on a websitefor downloading to the ejector;

FIG. 19 is a illustrative procedure for downloading the rosters createdrelative to FIG. 18 to the ejector;

FIG. 20 is a general use of the embodiment shown in FIG. 10 ;

FIG. 21 is an illustrative procedure for calibrating the ejector;

FIG. 22 is a general illustrative procedure for players to log onto theejector in the embodiment shown in FIG. 10 ;

FIGS. 23A-23B illustrate a general procedure for a shooting workout inaccordance with another embodiment of the invention wherein theprocedure is not dependent upon Doppler measurements;

FIGS. 24A-24B is similar to the procedure shown in FIGS. 23A-23B, butincludes Doppler measurements and statistics;

FIG. 25 is a general procedure for uploading statistics and measurementsto a local or non-local computer or website;

FIG. 26 is a general procedure for uploading shooting session data andstatistics to a website in accordance with one embodiment;

FIG. 27 is a general procedure for creating customized reports;

FIGS. 28A-28B is another illustrative challenge mode, which is areal-time challenge in the illustration;

FIG. 29 is another illustrative challenge for different players ondifferent teams at different locations using different ejectors;

FIGS. 30-41 are illustrative graphical user interfaces or screenshots inaccordance with one embodiment of the invention;

FIG. 42 is a scatter diagram or matrix illustrating various Dopplerstatistics and shooting percentages for various distances along variousvectors corresponding to the shooting locations selected by a user;

FIG. 42B is an exemplary shooting report;

FIG. 43 is a table illustrating the data visually shown in the scatterdiagram in FIG. 42 ;

FIG. 44 is an example of a “SESSIONS” file for uploading from theejector;

FIG. 45 is an example of the “SESSIONS” file from the ejector to thewebsite WS;

FIG. 46 is an example of various sorting variables or selection criteriafor use by a user;

FIG. 47 is an illustrative input selected criteria in one example;

FIG. 48 is an illustrative chart resulting from the selections made andshown in FIG. 47 ;

FIG. 49 is another example of input selection criteria or informationselected by a user in the example;

FIG. 50 is the report or chart shown from the selections made and shownin FIG. 49 ;

FIG. 51 is a listing of the sorting variables or selection criteria thata user may use, which in the embodiment shown includes Dopplermeasurements;

FIG. 52 is another illustrative example of selected criteria or inputinformation, including Doppler measurement of shooting distance;

FIG. 53 is a chart or report created by the website WS in response tothe selected criteria in FIG. 52 ;

FIG. 54 is still another example of selected input information orcriteria;

FIG. 55 is a chart or report created by the website WS in response tothe criteria or information selected in FIG. 54 ; and

FIGS. 56-63 are various charts and reports showing illustrativecomparisons and rankings of players and teams, where such players arefrom the same or different teams, same or different regions, skilllevels and the like.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring back to FIG. 1 , the system 10 comprises a user interface 40and a front display 42. The user interface 40 in the illustration beingdescribed is shown in more detail in FIGS. 3A-3D and will be describedlater herein. For ease of illustration, FIG. 3 illustrates the interface40 with various portions of the interface shown in FIGS. 3B-3D. Thesystem 10 further comprises a storage device 44, such as an electronicstorage device or other electronic storage, for storing data relative tothe player's efficiency, such as data regarding the player's performanceduring one or more of the shooter challenge routines 32 a and evenhistorical or cumulative information regarding a player's performanceover a predetermined period or even a player's career in shooting usingthe system 10.

The ejector 20 is a conventional ball ejecting machine and comprises aframe 24 having a plurality of wheels 26. The ejector 20 has aconventional ball ejector 28 that is pivotally mounted on the frame 24and can throw or eject basketballs 12 in the direction A. The ejector 20comprises a drive motor and linkage 30 for pivotally driving the ballejector 28 in the direction of double arrow B in FIG. 1 so that adirection of thrown balls can be changed. The system 10 comprises acircuit board (not shown) having the controller 32 that is coupled toand controls the operation of the drive motor and linkage 30, ejector 20as shown.

Note that the ejector 20 also comprises a ball retrieval or net system34 which facilitates gathering basketballs 12 that are thrown toward thehoop 14 in a manner conventionally known. As also illustrated, theejector 20 may further comprise a shoot or guide 36 for facilitatingguiding basketballs 12 into an inlet 38 where they can be ejected by theejector 20 through the outlet 39 and toward a basketball player P.

A photo sensor 33 is coupled to the hoop 14 and electronically coupledto the controller 32. The photo sensor 33 senses when the player P hassuccessfully shot the basketball through the hoop 14.

In the embodiment being described several conventional ejectors 20 maybe used, including The Gun 6000 Series available from Shoot-a-Way, Inc.of Upper Sandusky, Ohio. An alternative ejector 20 may be the Dr. Dish™product available from Airborne Athletics, Inc. of Belle Plaine, Minn.

In the illustration being described, the controller 32 comprises aplurality of routines or algorithms for improving the player P'sshooting efficiency. The routines include a shooter challenge routine 32a for challenging the player P in shooting a basketball 12 towards theat least one or a plurality of different areas 22. The shooter challengeroutine 32 a facilitates improving a player's efficiency in that theyprovide a player P with feedback as to his or her shooting accuracy.With the feedback, the player P can focus his or her shooting practiceon those areas where the player's efficiency is below a predetermined orpreselected efficiency percentage. In the illustration being described,the predetermined efficiency may be any desired or selected shootingefficiency, such as 30% or 40%. For example, if a player's shootingefficiency falls below the predetermined threshold, such as 40% in theillustration being described, the player P may forces his or herpractice on the areas where the player P needs to improve his or hershooting efficiency.

Referring back to FIG. 1 , the controller 32 further comprises means orapparatus for calculating the shooting efficiency using a shootingefficiency calculator 32 b. The shooting efficiency calculator 32 bcalculates a shooting efficiency of the player P at the at least one ora plurality of the plurality of different positions 22 where the playerP shot the basketball 12. The shooting efficiency calculator 32 b mayprovide shooting efficiency statistics and data during one or more ofthe shooter challenge routines 32 a mentioned later herein, but it isalso capable of providing historical or cumulative data regarding aplayer's lifetime or career shooting statistics at each of the pluralityof different locations 22. Again, the player P or a coach (not shown)may use the information, statistics or data as feedback in order toimprove the player's efficiency in shooting the basketball 12 at the oneor more of the plurality of different locations 22.

Referring back to FIG. 1 , the system 10 comprises a user interface 40and a front display 45. The user interface 40 in the illustration beingdescribed is shown in more detail in FIG. 3 and will be described laterherein. The system 10 further comprises a storage device 44, such as anelectronic storage device or other electronic storage, for storing datarelative to the player's efficiency, such as data regarding the player'sperformance during one or more of the shooter challenge routines 32 aand even historical or cumulative information regarding a player'sperformance over a predetermined period or even a player's career inshooting using the system 10.

As further illustrated in FIG. 1 , the system 10 further comprises aticket printer 46 which is coupled to the controller 32 and which iscapable of printing a ticket 48 (FIG. 6 ). In the illustration beingdescribed, the ticket 48 comprises a plurality of information fields 50.In the illustration being described, the information fields 50 mayinclude a player's name 52, time and date or period the player Ppracticed which could be a single day or date or could be a date spanover a period of time during which the player P used the system 10. Notein the illustration being described, the ticket 48 comprises informationfields 50 that also include information relevant to the player P'sshooting performance. In the illustration being described, the ticket 48comprises a spot column 55 which identifies the at least one or aplurality of predetermined locations 22 at which the player P shot thebasketball 12. A total shots column 56 which identifies the number ofshots attempted at the associated spot listed in the spot column 55. Theticket 48 information fields 50 also comprises a number of shots madecolumn 58. Finally, a percentage column 60 is provided so that a playerP can view the percentage of shots made at a given spot relative to thetotal number of shots taken over the time period 54 selected by theplayer P.

As mentioned earlier, a predetermined or desired efficiency threshold,such as 40% in the illustration being described, may be selected. Theplayer P can use the information fields 50, such as the percentagecolumn 60, and identify those spots where the player P's shootingefficiency dropped below the predetermined or desired efficiencythreshold. In the illustration shown in FIG. 6 , note that thehighlighted areas 62 each identify spots, such as spots 3, 10, 11, and13, at which the player P's efficiency dropped below 40%. Using thisinformation, the player P or his or her coach (not shown) may thenprogram the controller 32 using the user interface 40 (FIGS. 3A-3D) todirect one or more respected shots to those particular spots where theplayer P's efficiency dropped below the predetermined threshold. In amanner conventionally known, the player P may select a number of shotsto shoot at the one or more of predetermined plurality of differentlocations 22 or alternatively, the player P may select initially orafter reviewing his or her efficiency percentages to shoot a number ofshots at each of the plurality of different locations 22 where theplayer P's performance efficiency was deficient using one or more of theshooter challenge routines 32 a. These routines will not be describedrelative to FIGS. 7-9 .

In the illustration being described, the shooter challenge routines 32 aare programs stored in a read only memory (not shown) on the board (notshown) and under control of the controller 32.

Before beginning the shooter challenge routines 32 a, the player P orthe coach uses the interface 40 to program the controller 32. In thisillustration, the controller 32 is programmed in multiple steps. First,the user selects one or more of the plurality of different locations 22(0-16, in the illustration being described; the one or more selectedlocations sometimes referred to as a subset) during a first step or doesnot select a location thus the ejector will throw to the direction it ispointing. Note that the interface 40 may have the steps labeled for easyaccess. During a second step, the user programs the controller 32 andselects a time delay between passes or the time between which theejector 20 ejects basketballs 12. In one embodiment, the time delay ispredetermined and set to at least one second. The third conventionalstep is programming the controller 32 with the number of shots for eachof the plurality of different locations 22 selected in Step 1. Again,the player P can start the shooting by pressing the start button 70 andcan stop shooting by pressing the stop button 72 (FIG. 3D).

The player P or a coach may select a challenge shooting accuracy button74 (FIGS. 3A-3D) whereupon the controller 32 will begin the shooterchallenge routines 32 a. A multiple shots in a row routine requires theplayer P to make the number of shots consecutively before the ejector 20is caused to throw basketballs 12 at the next programmed spot. A totalnumber of shots routine requires the player P to make the total numberof shots before the ejector 20 begins throwing basketballs 12 at thenext programmed spot. During this routine, the player P does not have tomake the number of shots consecutively. In this regard, if the player Pselects the challenge shooting accuracy button 74, then the controller32 prompts the user using the screen or display 76 to determine whetherthe player P desires to make multiple shots in a row or multiple shotsat each spot before the ejector 20 is caused to pivot and throwbasketballs 12 to the next position, without the requirement that theshots be made in a row.

A main routine will now be described. If the challenge shooter accuracybutton 74 is not pressed and the player P or his or her coach pressesthe start button 70, the controller 32 begins at block 78 (FIG. 7 ) bystarting to throw basketballs 12 toward the player P at one of theplurality of different locations 22 as selected by the player P duringstep 1 (FIGS. 3A-3D). The routine continues to block 79 where thecontroller 32 assigns a TSPOTS variable to the number of locationsselected in step 1. The routine continues to block 80 where thecontroller 32 assigns a NUM variable to the number of shots per spotselected by the player P in step 3. At decision block 82, it isdetermined whether the challenge shooting mode was enabled by the playerP by pressing button 74 (FIGS. 3A-3D). If it was not, then thecontroller 32 energizes the ejector 20 to output one shot for each spotselected by the player P. In another embodiment, the controller 32energizes the ejector 20′ to output the total number of shots selectedin step 3 to each location before the ejector 20′ moves to the nextlocation. If a decision at block 82 was affirmative, then it isdetermined at decision block 83 whether the player P selected themultiple shots must be made in a row routine where the player P mustmake the selected number of shots in a row at each of the plurality ofdifferent locations 22 selected by the player P in step 1. If thedecision at block 83 was negative, then the routine continues (block 84)to the multiple shots which must be made at one or each of the pluralityof different locations 22 selected by the player P in step 1 which isillustrated in FIG. 9 , this may be referred to as a shots-made routine,or a custom shots-made routine. If the decision at decision block 83 wasaffirmative, then the routine continues (block 86) to the multiple shotswhich must be made in a row at the at least one or each of the pluralityof different locations 22 selected by the player P in step 1, which isillustrated in FIG. 8 and which will now be described.

If the player P selected challenge shooter accuracy routine in which theplayer P must make multiple shots in a row at the least one or aplurality of different locations 22 selected by the player P, then thecontroller 32 begins the routine illustrated in FIG. 8 (block 88) andthe routine continues to block 90 where the controller 32 energizes theejector 20 to throw a basketball 12 toward the first spot selected bythe player P during step 1.

The photo sensor 33 senses when a basketball 12 passes through the hoop14 (FIG. 5 ) and therefore when a shot by a player P has been made. Atdecision block 92 (FIG. 8 ), the photo sensor 33 determines whether theshot was made by the player P and if it was not then the routine loopsback to block 88 as shown. If the shot was made, the controller 32increments the count by one (block 94) and it is determined at decisionblock 96 whether or not the total number, which is the number that theplayer P has programmed during step 3 using the interface 40. It shouldbe understood that if the player P has selected the challenge shootingaccuracy button 74 and been prompted to enter during step 3 the numberof shots that must be made in a row using the buttons 77 (FIGS. 3A-3D),with the total number of shots displayed in the display 76. If thecontroller 32 determines that the total number of shots made, asrepresented by the COUNT variable, is equal to the predetermined numberof shots to be made as selected by the player P at decision block 96,then the routine continues to decision block 98, otherwise it loops backto block 90 as shown.

Thereafter, the controller 32 determines (block 98) whether or not thetotal number of spots (TSPOTS) equals one or zero. If the decision atdecision block 98 is negative, then the player P has made the number ofshots in a row at the location which the player P is shooting the ball,so the controller 32 energizes drive motor and linkage 30 to pivotallydrive the ejector 20 so that it will eject basketballs 12 toward thenext spot which was selected by the player P in step 1. If the decisionat decision block 98 if affirmative then the routine exits to a standbymode as shown.

Another shooter challenge routine 32 a (FIG. 1 ) may be selected by theplayer P as mentioned earlier (the custom shots-made routine). Duringthis routine, a player must shoot multiple shots at the at least one orat each of the plurality of different locations 22 that are selected bythe player P, without the limitation or qualification that the shots bemade in a row. If this shooter challenge routine 32 a is selected,controller 32 starts the routine in FIG. 9 wherein it sets a COUNT equalto zero at block 100. The controller 32 energizes the ejector 20 tothrow a basketball 12 (block 102) toward the first of the at least oneor a plurality of the plurality of different locations 22 selected bythe player P at block 102. At decision block 104, it is determinedwhether the shot is made and if it is not it loops back to block 102 asshown. If the shot is made, the controller 32 increments the COUNT byone (block 106) and then proceeds to decision block 108 where it isdetermined whether the total number of shots made is equal to the COUNT.If it is not, then the routine loops back to block 102 where anotherbasketball 12 is thrown. If the decision at decision at decision block108 is affirmative, then the routine proceeds to decision block 110where it is determined if the TSPOTS equals one or is TSPOTS equalszero. Thus, it is determined at decision block 110 if TSPOTS equals oneor is TSPOTS equals zero which signify that player P has only selectedone spot or the direction the ejector 20 is currently pointing (zerospots) to shoot his number of makes at this spot (i.e. there is no otherlocations selected so the ejector goes in standby mode). If it is not,then the controller 32 energizes the drive motor and linkage 30 topivotally drive the ejector 20 so that it ceases throwing thebasketballs 12 to the current location, orients to aim at the next spotselected by the player P at block 112, and begins throwing thebasketball(s) 12 to the next spot and the routine proceeds back to block100 as shown. If the decision at decision block 110 is affirmative, thenthe routine exits to standby mode as shown.

After the player P has used the system 10, it may output the shootingefficiency statistics to the ticket printer 46 by selecting the printbutton 114 (FIG. 3C). The user can display shooting statistics either bythe ticket printer or by exporting them to a secondary device like acomputer and see them there.

In the illustration being described, the controller 32 may be programmedwith one or more player's names, such as the players P on any given teamand their information stored in the electronic storage device 44. When aparticular player P is using the system 10 he can retrieve his userinformation using the user button 116 (FIGS. 3A-3D) which the controller32 could cause a directory of players to be displayed so that the usercan select the player P that will be using the system 10. In oneillustration, each player will have a 3 digit code tied to his namewhich will be initially set up on a computer and dropped down on theejector 20 by an import button 118 (FIGS. 3A-3D). When player P wants touse the system 10, he will enter his three digit code. This code will bedisplayed on the front scoreboard display 45 (FIGS. 1 and 4 ) when thesystem 10 is in standby mode and for a set time, such as at least 4seconds, in the STEP 3 (76 in FIGS. 3A-3D) three digit display. Althoughnot shown, the system 10 may include the ability to load/enter theshooter's number or name at the ejector 20 and have it displayed on thefront board and/or on the control board, thus not having to import itfrom a computer. The statistics relative to a player P may also beimported and stored using the button 118 (FIG. 3D), which a coach usesto load players into the system each tagged with a 3 digit code or ifthe coach has to edit a certain player's shooting data on a givenworkout. Moreover, the user can export data associated with one or moreplayers P using the export stats button 120 (FIG. 3D). In this regard,the controller 32 may have an input/output interface that enables, forexample connection to permanent or portable storage devices, such as CD,DVD, USB interface for smart drives, flash drives and the like. Theinformation can then be loaded onto other computers (not shown) forevaluation and use by other users, such as coaches, trainers and thelike.

During use of the system 10, it may be desirable to provide a display 45(FIGS. 1 and 3A-3D) which can be wired or wireless and in communicationwith the controller 32 so as to enable a player P or his or her coach toview the performance and efficiency during the player P's use of thesystem 10.

In general, the system 10 comprises the user interface 40 that enablesthe user to select the shooting practice that the user desires. Duringthe first step, the user turns the power to the ejector 20 and thecontroller 32 on and selects either the pre-programmed drills or theuser can select at least one or a plurality of different locations 22 atwhich the player P will shoot the basketball 12. In the illustrationbeing described, for example, the user would select the variouspositions by depressing one or more of the buttons 41 (FIG. 3A) whichare arranged on the interface 40 to generally correspond to thepositions 22 labeled in FIG. 1 at a basketball playing area in avisually congruous manner, such as on a one-to-one basis. For example,the buttons 41 may be positioned about one or more basketball courtelements, such as a baseline and/or a key (e.g., free throw line, lanelines) of a regulation basketball court. The buttons 41 may beilluminated upon selection, such as by diodes D2-D18. The controller 32receives the selected positions information and stores it in memory (notshown). During a second step, labeled as step 2 on the user interface40, the user selects the time delay between passes using the buttons 43and display 45. The time delay represents the amount of time that theejector 20 allows to lapse before ejecting basketballs 12. The userinterface 40 may include a clear selected locations button (labeled“S11” in FIG. 3A) permitting the user to deselect formerly selectedbuttons 41, and thus corresponding locations 22, and select new one orones of the buttons 41, and thus corresponding location(s) 22, therebypermitting revision to a custom practice routine, such as prior toinitiation of the custom practice routine.

During the third step, the user uses the button 77 and display 47 toselect the number of shots at each of the locations selected duringstep 1. The user may begin a practice by depressing the start button 70and may end the practice by depressing the stop button 72.

During this third step, the user may also elect to challenge theshooting accuracy. The shooter challenge routines 32 a are stored in theelectronic storage device 44. It should be understood that the shooterchallenge routines 32 a facilitate improving the player P's shootingefficiency by providing a number of shooting challenges to the player Pat one or more of the plurality of different locations 22. Bychallenging the shooter accuracy and then evaluating a shooter'sstatistics during the challenges, the shooter's performance can beevaluated. If the shooter's shooting efficiency is below a predeterminedthreshold or is deficient as determined by the player P or his or hercoach, then during the player P's next shooting practice the player Pcan use the information and program the system 10 to throw basketballs12 at one or more of the plurality of different locations 22 where theplayer P's performance was deficient, thereby improving the player P'sshooting accuracy in general and also improving the player P's accuracyat one or more of the plurality of different locations 22.

Advantageously, this system 10 and method provide means for improvingthe player P's efficiency at shooting the basketball 12 at one or moreof the plurality of different locations 22.

The system and method enables a player to select S number of shots and Nnumber of positions at which the player will shoot at least onebasketball.

The system and method further permits repeating the throwing, sensingand causing steps until the player has shot S number of shots at each ofN number of position, wherein S is at least one of a total number ofshots made at each of N number of positions or a total number of shotsmade in a row at each of N number of positions.

Referring now to FIGS. 10-63 , other embodiments of the invention willnow be presented and described. An overview of these embodiments willnow be described. In the embodiments, like parts are identified with thesame part numbers, except a prime (“′”) has been added to the partsdescribed in this embodiment. Notice in FIG. 10 some additionalcomponents relative to the embodiment of FIG. 1 are shown. In thisembodiment, a system 200 is provided for training players from the sameor different teams and for training players or teams practicing at thesame or different locations. In one embodiment shown in FIGS. 10-62 ,the system 200 comprises a Doppler measuring system 800 and means formeasuring or calculating various measurements, such as a player'srelease time, a player's distance between a position from which theplayer shoots to the rim 14′, a release arc associated with the player'srelease of the ball 12′, and an entry arc are associated with the angleat which the ball 12′ enters the hoop 14′, as will be described laterherein.

In another embodiment, the system and methods described herein providesmeans, procedure and tracking system for calculating, comparing andtracking shooting statistics and data of players from the same team ordifferent teams regardless of whether those players or teams are locatedat the same shooting location or at different shooting locations andregardless of whether the players or teams are shooting at the same timeor at different times. In other words, the system allows, for example, aplayer, a coach or other interested person on one team of players toview that player's shooting statistics and also to compare thosestatistics against other shooters' statistics on the same team orcomparing that shooter's statistics against statistics of shooters fromdifferent teams.

In the examples shown, it is important to note that the players on thedifferent teams could be, for example, in the same league, in differentleagues, of the same age group or different age groups or could bedifferent skill levels (e.g., high school vs. college, college vs. pros,high school vs. pros). The comparisons and reports or chart, can becreated using various criteria, such as age (e.g., comparison of aplayer age fifteen to a comparison of shooting statistics from otherplayers of the same age or in the same age group.) It is also envisionedthat gender could also be a criterion for comparison so, for example,girls or women could be compared against other girls or women from otherteams in the same or different age groups. Moreover, the female shooterstatistics could be compared against male shooter statistics.

In FIG. 10 , a player P identifies himself to the computer 202 and thena computer 202 initiates a series of drills for the player P. During thedrills, the ejector 20′ selects at least one spot, area or position 22′on the basketball floor and causes the ball launcher, ejector 20′,described earlier herein, to pass basketball(s) 12′ to one or more spotsor locations selected by the user or that are part of the pre-programmeddrills. A measurement system, such as a Doppler measurement system 800described earlier measures various Doppler data described later herein,such as a speed of the basketball 12′ as it leaves the ejector 20′. Theplayer P responds by moving to one of the spots or positions 22′ andcatches the basketball 12′. The ball launcher, ejector 20′ and othercomponents may be the same or similar to the ejector 20 and other partsdescribed earlier and may have feature of the embodiment describedearlier.

In short, the system and methods described herein permit a player, coachor other interested person or user to compare a shooter's statisticsbased on a number of selected or predetermined criteria which will bedescribed later herein. For ease of description, the term “user” will beused herein and refers to any interested person, such as a player,trainer, coach, scout, family member or any other interested user.

Referring back to FIG. 10 , the method and system 200 also providesmeans and apparatus for uploading and downloading information and databetween the ejector 20′ and a website WS using a computer (such ascomputer 202 or 204) via the internet, wirelessly, or using otherdevices (e.g., computer 204). The website WS has an associated server206 that permits the user to upload and download information to and fromthe website WS using the computer 202 in the manner described laterherein.

The system comprises the computer 202 which is coupled to the localserver or storage device 44′ which was described earlier herein relativeto FIG. 1 . In the example, the computer 202 is used by a first user anda second computer, such as computer 204, could be used by a second userso that the second user could also access the website WS via theinternet. Of course, multiple users could access and use the website WSfrom other computers (not shown) or devices, such as smart devices likeiPad, iPhone, Blackberry and the like. For ease of illustration, thesecond user is shown in FIG. 10 as being associated with a remote orsecond system 204, but it should be understood that the second usercould also be utilizing the computer 204 directly, wirelessly or via theinternet. Note also that the first user could access the computer 202directly or via the internet as shown. It is also important tounderstand that the second user could be utilizing the system 200located at the same geographic location and same system 200 that is usedby the first user. Alternatively, the second user could be utilizing adifferent launcher 20′ with a different backboard 14′ at a differentgeographic location remote from the first location of the system 200 andcomputer 202 that the first user is using. For ease of description, thesecond system comprising the same components as the system 200 will becollectively referred to as system 208 (FIG. 10 ).

In the illustration being described, the first and second systems 200and 208, respectively, are calibrated as described herein so thatshooting positions and statistics gathered from the various shootingpositions using the first and second systems 200 and 208 can becompared. For example, a player A using system 200 and shooting at alocation, such as at location 8 (FIG. 10 ), as identified by button 8shown in the interface 40 in FIG. 3 , will be shooting from location 8at the basketball playing area shown. The ejector 20′ will shoot orlaunch balls to the position 8 as selected, the shooter A will shootfrom that position and the system 200 will measure and calculatestatistics and data, described later herein, relating to player A'sshooting at the position 8. A player B using the second system 208,which can be at the same or different geographic location, that has beenprogrammed to launch balls or that launches ball to the same position 8,the system 200 will measure, calculate and generate data and statisticsrelative to the second player B's shooting efficiency at the position 8.In one illustrative embodiment that the players could be shooting at thesame time or at different times and that the system 200 and secondsystem 208 could be located at the same or different geographiclocations. Thus, the players may not know that they are competingagainst each other, whereas in other illustrative embodiments, theplayers may desire a competition and use the systems 200 and 208 tocompete directly against each other at the same or different times orlocations.

As mentioned, one embodiment includes the Doppler measurement system forgenerating various data and statistics to be described herein. Thegeneral measurements will be described relative to FIGS. 12A-12C and13A-13G. Features of a Doppler system and circuit will be describedlater herein relative to FIGS. 15A-15D.

FIGS. 12A-12C are flow charts which illustrate processes undertaken byone form of the invention showing a general operation of the Dopplersystem 800.

In FIG. 12A, execution begins at block 801. Block 802 then inquireswhether the motor which launches the basketball 12 is running. If not,the NO branch is taken, and the logic idles in the NO branch until themotor is detected as running.

When the running motor is detected, the YES branch is taken, and thelogic reaches block 803, which inquires whether a throwing arm TA (FIG.11 ) in the ejector 20′, powered by the motor 30′ (FIG. 10 ), has struckits limiting stop, which is a rubber limit bumper RB (FIG. 11 ). If not,the NO branch is taken, and the logic idles in the NO branch until astrike of the limit-bumper is detected by a proximity sensor PS (FIG. 11) having a proximity pickup PP. Note in FIG. 15C, the microprocessor pinlabeled RC4 obtains signal from proximity sensor PS from connector J2.

It is pointed out that at least some of the idling in the NO branchoccurs during the travel of the throwing arm from its rest position enroute to the limit-bumper RB.

When striking of the rubber limit-bumper RB is detected, the YES branchis taken from block 803, and block 804 is reached. Block 804 inquireswhether a pulse is detected from the proximity sensor LBS, whichindicates that the throwing arm TA has struck the limit-bumper,indicating that the ball 12′ has been launched. If no pulse is detected,the NO branch is taken, and the logic idles in the NO branch until thepulse is detected.

When the pulse is detected, indicating that the arm TA has struck thelimit-bumper RB, the YES branch is taken, which leads to block 805 inFIG. 12B. In block 805, a flight timer is started in microprocessor 910(FIG. 14 ) described later herein. To repeat: the pulse of block 804 inFIG. 12A indicates that the launching arm has reached the limit of itstravel, and thus a ball has been launched. The flight timer is nowstarted at this initiation of the launch, as indicated in block 805 ofFIG. 12B.

Next, block 806 is reached, in which the duration of X number of pulsesis measured. This allows computation of the time interval T betweenadjacent pulses to be measured, which allows determination bymicroprocessor 910 of the pulse frequency, which is the inverse of T, or1/T. This is an indicator of the Doppler frequency, although in thedigital domain.

Next, the logic reaches block 807 in FIG. 12B, which inquires whetherthe measured speed of the ball 12′ has reached zero. If not, the NObranch is taken, and the logic reaches block 808, which inquires whetherthe gain of the amplifiers described later herein which amplify theDoppler signal should be increased. If not, because the amplification issufficient, the NO branch is taken from block 808 and leads to block806.

If block 808 indicates that amplification must be increased, the YESbranch is taken, leading to block 811, where an amplifier gain isincreased. The logic returns to block 806.

If, in block 807, the ball velocity is detected as zero, indicating thatthe player has caught the ball 12′, then the YES branch is taken. Block809 is reached, wherein the Doppler frequency, mentioned in connectionwith block 806, is actually computed. Also, a release timer istriggered.

At this time, it is assumed that the player has caught the ball, becausethe measured velocity of the ball is zero. It is desired to now learnhow fast the player can get off a shot, also referred to herein asrelease time, so a release timer RT is initiated in microprocessor 910described later herein.

The logic then proceeds to block 810, which asks whether pulses arereceived which indicate that a Doppler frequency has resumed. To repeat:during the flight of the ball to the player, the Doppler pulses droppedto zero when the player caught the ball 12′. Now, as the player holdsthe ball 12′ momentarily, block 810 waits for the pulses to resume,indicating that the player has made a shot. The logic idles in the NObranch of block 810 until ball 12′ motion, indicating a shot isdetected.

When the pulses are detected, the YES branch is taken from block 810,and block 812 is reached. That block ascertains the count value of therelease timer which was initiated in block 809. The count valueindicates the time delay between (1) the time when the player caught theball and (2) the time the player makes a shot.

Next, block 813 is reached, which measures the speed of the shot made bythe player in the manner of block 806.

Next, block 815 in FIG. 12C is reached, which computes a distance of theplayer from the hoop or rim 14′, based on the measured speed of the balland the time of flight of the ball.

Next, block 816 calculates the release angle, entry angle to the basket,and the arc height, or peak altitude, of the ball.

Next, block 817 displays, or prints, or both, the five indicatedparameters which were computed, and stores those values.

Next, block 820 inquires whether the ball throwing motor is active. Ifnot, the NO branch is taken, and the processing ends, as indicated byblock 821. If so, the YES branch is taken, and the logic returns toblock 803 in FIG. 12A.

FIGS. 13A, 13B and 13C provide an overview of the computations used togather various Doppler measurements referred to herein. These algorithmsare programmed into microprocessor 910 (FIG. 14 ) described laterherein. FIGS. 13D-13H provide greater detail referred to in thedescription relative to FIGS. 14 and 15A —15C and elsewhere herein.

In FIG. 13A, the ball 12′ travels toward the player. The followingequations are used:

-   -   A1 D=V_(GUN)×T_(d)    -   A2 V_(GUN) is velocity of ball    -   A3 V_(GUN)=(C×ΔF)/(2×F)        -   C=Speed of Light        -   F=Radar Frequency (24.15 GHz)        -   ΔF=Doppler Shifted Frequency    -   A4 V_(GUN)=ΔF/161 m/sec    -   A5 T_(d)=Time of Flight

In FIG. 13A, the ball B travels toward the player. The distance to theplayer is given by equation A1, and is the standard equation of distanceequaling velocity multiplied by time. The time Td is defined in equationA5.

V_(GUN) is the velocity of the ball, as indicated by equation A2.Equation A3 gives a standard Doppler equation. Equation A4 is asimplification of equation A3, in which the constants F and C have beeninserted. It is seen that velocity, in meters per second, equals themeasured frequency shift divided by 161.

In FIG. 13B, the arc height D_(A) (or D_(Arch)) is computed using thefollowing equations:

-   -   B1 measure horizontal velocity of player's shot, V_(h)    -   B2 compute assumed time of flight to basket, T_(p)        -   T_(p)=D/V_(h) (D from FIG. 13A)

In FIG. 13B, the arch height D_(A) (or D_(Arch)) is computed. Dais theheight above the point at which the player releases the ball, as shownin FIG. 13E, and not the height of the arch above the ground.

In equation B1 in FIG. 13B, the horizontal velocity component, V_(h), ismeasured by the radar gun, as described herein. Equation B2 computes theassumed time of flight, T_(p), to the basket. V_(h) becomes V_(ox)later. V_(v) becomes V_(oy) later.

The vertical velocity in that equation, V_(y), is computed in FIG. 13E,equation 4. It is preferred to compute D_(A) as shown in equation 5,which is explained later with reference to FIG. 13G.

In FIG. 13C, the entry angle theta_(r) θ_(e) is computed, as is therelease angle theta_(r) θ_(r). The following equations are used:

-   -   C1 compute V_(v) based on kinetic energy of ball at basket    -   C2 θ_(e)=arctan V_(v)/V_(h)

Phrase C1 indicates that the vertical component, V_(v), of the ball'svelocity is computed. Equation C2 then computes theta_(e). Theta_(r) iscomputed in a similar way. V_(v) (“v” for vertical) is a generalizedvariable, and a specific instance later will be V_(by) (“y” for y-axis).Similarly, V_(h) (“h” for horizontal) in FIG. 13C is a generalizedvariable, and a specific instance later will be V_(bx) (“x” for x-axis).

FIGS. 13D-H will provide details of the computations just outlined.

In FIG. 13D, an x-y coordinate system is shown, wherein x representshorizontal distance and y represents height. For any point P on the pathof the ball B, equations 1 and 2 apply, which are provided below andwhere V_(oy) is vertical velocity component, upon shooting, and V_(ox)is horizontal velocity component, upon shooting.Y=V _(oy) T−½g T ²   Equation 1X=V _(ox) T OR T=X/V _(ox)   Equation 2

Equation 1 is the difference between (1) the vertical distance coveredbecause of the initial velocity of the ball, namely, V_(oy)T and (2) thedeceleration of the ball due to gravity, namely, ½g T². From anotherpoint of view, equation 1 is the sum of (1) distance travelled upward atany given time T, plus the superposition of (2) the distance travelleddownward at that same time T. Equation 1 gives the y-coordinate of theball.

Equation 2 gives the x-coordinate of the ball, and is the simplevelocity-multiplied-by-time function.

In conjunction with the illustration provided in FIG. 13E, equation 3 isthe result of combining equations 1 and 2. In equation 3A, the knownvalues of x and y are substituted for the condition where point P islocated at the basket. That is, at the basket, the value of x is D andthe value of y is D_(B) (or D_(Basket)). Those values are substitutedinto equation 3, to produce equation 3A, as provided below.Y=(XV _(oy) /V _(ox))−½g(X ² /V _(ox) ²)   Equation 3D _(B)=(DV _(oy) /V _(ox))−½g(D ² /V _(ox) ²)   Equation 3A

Equation 4 is a reduction, in which equation 3A is multiplied by V_(ox)², and re-arranged, as indicated. Equation 4 allows computation ofV_(oy), which is the vertical component of the ball's velocity.V _(oy)=(D _(B) V _(ox) ²+½g D ²)/DV _(ox)   Equation 4

FIG. 13F is a further illustration of the content of Equation 4. V_(oy),the vertical component of velocity of the ball, is computed from D_(B),V_(ox), D, and g. D_(B) is the height of the ball, at the basket, abovethe player's release height. The player enters D_(B) into the systemupon initialization. Of course, D_(B) will, in general, be larger for aplayer who is short of stature, compared to a taller player.

V_(ox) is the x-component of velocity of the ball, and is measured bythe Doppler shift. D is the distance between the player and the basket.The parameter g is the acceleration due to gravity.

FIG. 13G illustrates an exemplary application of equation 5, which isprovided below, and which allows computation of DA, the arch height,based on V_(oy). Equation 5 results from solving the equation (½)MV²=MgHfor H, and making the substitution indicated. Equation 5 is applicablefor a generalized body traveling vertically, to a height H, where M ismass, g is acceleration of gravity, and V is vertical velocity. That is,the body initially had only kinetic energy and all that energy isconverted into potential energy. The equation may be solved for H andD_(A) may be substituted for H and V_(oY) for V.D _(A) =V _(oy) ²/2g   Equation 5

FIG. 13H uses the preceding values computed to obtain the angle theta,the entry angle of the ball into the basket. Equation A indicates thepotential energy of the ball at the top of the arch, that is, at heightD_(A) (or D_(Arch)). Equation B indicates the total energy (kinetic pluspotential, in the y-direction) of the ball at the basket, at heightD_(B) (or D_(Basket)). It is assumed that V_(bx)=V_(ox), since air dragis ignored. This assumption is considered tenable, since at a typicalball velocity of 13 feet per second, the speed reduction due to drag isabout 0.9 percent, that is, less than one percent. V_(BY) is thevertical velocity at the basketball. D_(B) is the basketball heightabove player's release point. The total energy at basketball must equalpotential energy at top of arch, so Equation A must equal Equation B.Equation 6 sets Equation A equal to Equation B and solves for V_(BY).E _(t) =mgD _(A)   Equation AE _(B)=½mV _(BY) ² +gD _(B)   Equation BEquation A=Equation B OR mgD _(A)=½mV _(BY) ² +mgD _(B)OR ½V _(BY) ² =gD_(A) −gD _(B) V _(BY)=√{square root over (2g(D _(A) −D_(B)))}=8.02√{square root over (D _(A) −D _(B))}   Equation 6

Another embodiment for determination of arch height is shown in FIG.13I. In this embodiment, the distance to the player is known and whetherthe player is at R1 or R2. So, in advance, a player makes a series ofshots at each of R1 and R2, with different arch heights. The shot foreach different arch height will have a different flight time. A look-uptable may be created and stored in memory. Then, during play, for eachshot, the distance (R1 or R2 in the illustration) and the flight time isascertained. An arch height for that type of shot is “looked-up” in thelook-up table, which eliminates the need to compute the value. This isillustrated in FIG. 13I. The distance, R, and time, T, for a given shotmay be known. The H can be found with a table and R and T. So instead ofcomputing H, H may be found by way of a look-up table.

The total energy of the ball (in the y-direction) at the basket equalsthe potential energy at the peak of the arch, that is, at the heightD_(A). Thus, equation A is set equal to equation B, and solved forV_(By), producing equation 6. V_(By) is the vertical component ofvelocity at the basket.

Equation 7 then uses V_(by) and V_(bx) to compute the entry angle of theball at the basket.

-   -   An exemplary calculation using typical values will now be given.        The following assumptions are made:        -   1. Velocity of ball as shot from the ejector, V_(g)un, is 20            feet per second.        -   2. The distance D from ejector to player is 18 feet.        -   3. The hold time by the player is 0.45 seconds, that is,            slightly less than one-half second.        -   4. The horizontal velocity of the player's shot, V_(ox), is            13 feet per second.        -   5. The height of the basket above the player's release            height, db, is 3 feet.

The following calculations are thus made.

-   -   A. The flight time to the player is 18 feet/(20 feet/second), or        0.9 second. Thus, T=0.9 second.    -   B. From Equation 4 in FIG. 13E, V_(oy)=[(D_(B))(V_(ox) ²)+½g        D²]/D V_(ox).        In this example, V_(ox)=13 feet/second, D_(B)=3 feet, D=18 feet,        and g=32.2 feet/second². Thus, V_(oy), vertical velocity of the        player's shot, equals 24.46 feet per second.    -   C. From Equation 5 in FIG. 13G, D_(A)=(V_(oy) ²/2g)=9.29 feet.        Since the height of the basket is known to be ten feet, the ball        release height is seven feet. The arch is thus 6.29 feet above        the basket (i.e., 9.29-3.0).    -   D. The entry angle, theta, in FIG. 13H is calculated from        Equation 6 in that Figure. V_(by)=8.02 SQRT(D_(A)−D_(B))=20.1        feet per second. Theta is ARCTAN(V_(by)/V_(bx))=ARCTAN        (20.1/13)=57.1 degrees.

The system 200 and Doppler system 800 comprise a Doppler circuit forcapturing and/or calculating the various Doppler measurements that willnow be described.

FIG. 14 is a high-level diagram of a circuit which detects the speed ofthe ball 12′ as it exits the launcher. FIGS. 15A-15D are more detaileddiagrams of the circuit.

Horn 900 in FIGS. 10, 11 and 14 is mounted adjacent an exit port on theejector or launcher 20′. Horn 900 in FIG. 14 generically represents aradar gun having a Gunn diode (not shown) in the illustration. It shouldbe understood that a conventional radar gun may be used.

Horn 900 includes (1) a radar transmitter which transmits bursts ofenergy at 24 GHz, (2) a receiver, or detector, which detects reflectedradar energy, and (3) a mixer (also called a multiplier or heterodynecircuit) which produces a signal which indicates the difference infrequency, due to Doppler shift, between the transmitted signal and thereceived signal.

The difference signal, indicated as waveform DS in FIG. 14 , will mostoften lie in the range of about 200 to 1200 Hz. The difference signal DSwill probably be contaminated with low frequency noise N.

A variable gain amplifier 902 amplifies the difference signal DS.Waveform 904 represents the amplified signal. The amplifier isrepresented as an amplifier 906 symbolically followed by a variablepotentiometer 908. The latter operates as a voltage divider and picksoff a signal which is a percentage of the output signal produced by theamplifier 906. Thus, as a hypothetical example, if the gain of amplifier906 is 10, and potentiometer 908 picks off 80 percent of the amplifiedsignal, the net amplification is 8.

The gain of the variable gain amplifier 902 is controlled bymicroprocessor 910, as indicated by dashed line 912. One reason forusing variable gain is that the strength of the reflected signalreceived by horn 900 will depend on the distance to the object (thebasketball 12′ in this context) causing the reflection.

For example, if the object is located ten feet from the horn, thereflected signal received by the horn will have a certain strength. Ifthe object is located twenty feet from the horn, the reflected signalreceived by the horn will have a smaller strength because the reflectedsignal travelled a longer distance.

In order to compensate for this reduced signal strength due to distance,the gain of amplifier 902 is adjusted during the flight of the radarpulse. The following simplified Table 1 illustrates some principlesinvolved in this compensation. All units are arbitrary for simplicity.

TABLE 1 Strength of Row Distance to Time of Flight of Received Gain of100 Object Radar Pulse Signal Amplifier 1 10 1 5 1 2 20 2 4 5/4 3 30 3 35/3 4 40 4 2 5/2

As Table 1 indicates, the time of flight of the radar pulse (that is,the round-trip time which includes the time of flight to the object,plus the time of flight back to the horn 900) is proportional to thedistance to the object. The strength of the received signal isarbitrarily indicated as the sequence 5, 4, 3, 2.

It is pointed out that the flight time of the ball-pass describedearlier is not the time of flight in Table 1, but is one-half of thetime of flight of Table 1.

The gain of the amplifier 902 is adjusted so that the signal strengthproduced by the amplifier 906 remains at unity. For example, for theobject at 10 distance units, the received signal strength is 5, and thegain is unity.

For the object at 20 distance units, the gain is 5/4, or 1.25. When thisgain is applied to the received signal strength of 4, the resultingsignal strength is 4×5/4, or 5, making the received signal strength,after amplification, the same as the signal strength for the object at10 distance units.

Further, the sequence of operation is significant. Row 1 represents anelapsed time of 1 unit after transmission of a radar burst. The gain is1 at this time. If a reflected signal is received at this time, it isamplified by this gain.

Row 2 represents an elapsed time of 2 units after transmission of thisradar burst. The gain is 5/4 at this time. If a reflected signal isreceived at this time, it is amplified by this gain.

Row 3 represents an elapsed time of 3 units after transmission of thisradar burst. The gain is 5/3 at this time. If a reflected signal isreceived at this time, it is amplified by this gain, and so on.

Thus, for each radar pulse transmitted, the microprocessor 910 in FIG.14 adjusts the gain of amplifier 902 according to the sequence listed inthe Table above, based on the time elapsed since the pulse wastransmitted. At time 1, the gain is 1; at time 2, the gain is 5/4; attime 3, the gain is 5/3, and so on. This sequence is repeated for eachsuccessive pulse.

In the immediately preceding discussion, a single speed of theball-pass. However, if a faster pass is made, then, at any given timeafter launch, the ball will be farther away than the same ball passed ata slower speed.

To repeat: at any given time after launch, such as Y milliseconds, thereflected radar signal from the faster ball, when received, will besmaller than the reflected radar signal from the slower ball, whenreceived. The reason is that, after Y milliseconds, the faster ball isfarther away.

Accordingly, Table 1 above can be modified. The progressive reduction ofsignal strength in the received burst will depend on the distance whichthe burst traveled (that is, the total distance to the basketball, plusthe return distance). That distance will equal (1) the speed of thebasketball multiplied by (2) the time of travel of the basketball.

The basketball's speed is known to the microprocessor 910 in FIG. 14 .The time of travel is also known because that is simply the time elapsedsince the launch of the basketball, called the pass flight time above.

Therefore, the distance to the basketball 12′, in the second column ofTable 1, in principle, will be known by multiplying the speed of thebasketball 12′ times the time elapsed since the radar pulse wastransmitted. A radar pulse will travel twice this distance. Theattenuation of the radar signal will depend on this distance.

Consequently, the time elapsed since the launch of the basketball isused to determine the gain of variable gain amplifier 902 in FIG. 14 .

This can be illustrated by Table 2.

TABLE 2 Distance to Time of Flight of Row Speed of Ball Object RadarPulse 1 20 10 1 2 20 20 2 3 20 30 3 4 20 40 4

Assume that the speed of the ball 12′ is 20, as indicated. In Row 1, thetime of flight represents a trip to the ball, plus the return trip, fora distance of 20. Since the speed is 20, the time of flight is 1, asindicated.

In row 2, the speed is still 20, but the total distance is 40,corresponding to the time shown of 2, and so on.

In another embodiment, the gain selected for each time instant afterlaunch of the basketball 12′ need not be a linear function of time.

Therefore, the distance to the ball 12′ is, in principle, used to adjustthe gain of the amplifier 902 in FIG. 14 . That distance can be inferredbased on speed of the ball, and time elapsed since the ball waslaunched. Thus, for a given ball launch speed, a given sequence of gainsis computed, or retrieved from memory. One gain is used at each timeinterval, as indicated by the Tables above. For another ball launchspeed, another sequence of gains is computed, or retrieved from memory,and so on.

In one form of one embodiment of the invention, the goal is to maintainthe signal received by horn 900 as constant as possible. The gainrequired at each instant can be determined experimentally in a simplemanner, since the distances involved are not large. For example, if thebasketball is launched for different distances of 5 feet, then 6 feet,then 7 feet, and then in one foot increments up to 100 feet, and thesignal attenuation measured for each launch, that represents 96launches, which can be done in a short time. The necessary signal gainis immediately apparent for each launch, based on the signal receivedfor each.

After the gain is adjusted in pursuit of maintaining a constant receivedamplitude, the signal is filtered. In FIG. 14 , the output of variableamplifier 902 is fed to a block 914, which represents components, laterdescribed, which perform multiple functions. One function is that block914 extracts the amplified difference signal DS, and suppresses lowfrequency noise N. A second function is that block 914 performsamplification.

The output of block 914 is indicated as waveform 916, which representsthe extracted difference signal DS.

The output of block 914 is fed to a comparator 918, which compares thisoutput to a threshold voltage THRESH, which is produced by apotentiometer 920. Potentiometer 920 is manually adjustable. Theadjustable voltage THRESH determines the trip point of the comparator918.

Each time the voltage THRESH is exceeded, comparator 918 produces apulse, thereby producing a pulse train 922 having a frequency identicalto that of waveform 916, which frequency is identical to the differencefrequency DS. This frequency indicates the speed of the object whichreflected the radar pulse produced by horn 900

Microprocessor 910 counts the number of pulses occurring in pulse train922 per second, and thereby deduces the frequency of the pulse train922.

Switch 923 is controlled by the microprocessor 910, as indicated bydashed line 925. Switch 923 turns the transmitter within horn 900 on andoff periodically.

One reason is that the transmitter utilizes a Gunn diode to generateradar energy. Gunn diodes can draw significant amounts of current, andthe current can cause heating of the Gunn diode, which will increase thetemperature of the Gunn diode. The increase in temperature can cause adrift in frequency of the Gunn diode.

Therefore, in one form of one embodiment of the invention, themicroprocessor 910 turns on the Gunn diode, through switch 923, onlyjust prior to transmission of a radar burst, and shuts down the Gunndiode immediately afterward.

FIGS. 15A-15C are more detailed circuit diagrams of the speed measuringcircuitry of FIG. 14 . Horn 900 in FIG. 15A corresponds to thetransmitter/receiver horn 900 of FIG. 14 described above.

In FIG. 15A, and other figures, resistors are labeled with the symbol“R,” followed by another symbol, such as “7,” as in “R7” adjacent, andto the right of, horn 900. These symbols are not used as referenceindices for explanations given in the text of this Specification for thefunctions provided by the associated resistors. Instead, the symbols areused for internal consistency in the drawings. For example, if R7appears in two different places in the drawings, the symbol R7 indicatesthat the same resistor is shown in those two places. A similar commentapplies to capacitors and other elements.

In FIG. 15A, a first stage amplifier 924 (not individually indicated inFIG. 14 ) receives the signal from horn 900. The amplifier is ACcoupled, and has a gain of 100.

The symbolic variable gain amplifier 902 of FIG. 14 is indicated in FIG.15A as amplifier 902A. The variable gain is provided by a digitallyvariable resistor 908A, which alters the feedback network of individualamplifier 926, which alters the overall gain of the amplifier stage902A.

Digitally variable resistor 908A in FIG. 15A functions as the symbolicpotentiometer 908 in FIG. 14 , and is under control of themicroprocessor 910 in FIG. 14 . Digitally variable resistors are knownin the art, and one suitable version is model number MCP 4013, availablefrom Microchip Technologies, Inc.

In FIG. 15A, filter 914A is contained in block 914 in FIG. 14 . Theoutput line 928 in FIG. 15A leads to the same line 928 in FIG. 15B.

Lines 909 represent power lines which receive voltages from sourcesexternal to the components of FIG. 15A. The voltages are delivered tothose components, via lines which are not shown. Item 909A in FIG. 15Band item 909B in FIG. 15C represent similar power lines.

The microprocessor 910 supplies reference voltages which are usedthroughout FIG. 15 . It includes a precision shunt voltage reference911, such as model number LTC 1634, available from Linear Technologies,Inc., which feeds an operational amplifier 912, such as model numberTL074, available from Texas Instruments Corporation.

In FIG. 15B, amplifier stages 920 amplify the signal on line 928. Theeight diodes D (only two of them are labeled) act as clippers toeliminate low level noise when no signal is received on line 928, aswhen no ball-pass has been made by the ball launcher, which is shown inother figures.

Comparator 922 determines when the output of amplifiers 920 exceed athreshold and, if so, feeds a signal to transistor 924. The signal isindicated by LED 926.

The signal on line 930 is fed to microprocessor 915 in FIG. 15C, whichis an industry standard PIC 18F9140. An RS232 converter 931 enablesserial communication with the microprocessor 910. LEDs 935 are used fordiagnostic purposes.

FIG. 15D illustrates a power supply PS which powers the circuitsdescribed above. Twelve volts DC are applied to lines 950. Lines 950deliver power to voltage regulator 944, which is an industry standardmodel 7805 regulator, which delivers five volts, regulated, on terminal960. A shut-down switch 968 is activated by a signal on line 969.

Terminals 950 also power a DC/DC converter circuit 970, which containsthe industry standard LT1931 DC/DC converter 972, which producesnegative 8 volts on line 975. Other embodiments of the invention mayutilize 12 volts on this line 975, and yet other voltages in othercases.

A significant feature of one form of the invention is that themicroprocessor 910 in FIGS. 14, 15A makes the computations describedherein based, in essence, on only two external inputs. One externalinput is the pulse train 922 of FIG. 14 , which, after processing,appears on the line labeled SigA in FIG. 15C. That line SigA is a singleline, carrying a single pulse train.

That pulse train 922 indicates the Doppler shift of the radar signal,which is Delta-F in equation A3 in FIG. 13A. That Doppler shift is usedto compute the parameters of (1) distance to the player, (2) arch heightD_(A) in FIGS. 13B and 13E, and (3) release angle and entry angle inFIG. 13D.

The other external data used is T_(p), elapsed time of the player'sshot, as in equation B2 in FIG. 13B. This is computed as the timeinterval between (1) the time of initiation of the shot, as indicated byresumption of the Doppler signal, and (2) the arrival of the ball at thebasket, which is detected as described herein.

So long as the user has entered db (the difference between the height ofthe ball at the release point and the loft rim), the only externalvalues used by the microprocessor are (1) the Doppler shift and (2) theflight time of the player's shot, T_(p).

Another time, T_(d) in equation A1 in FIG. 13A is used, namely, the timeof flight of the pass to the player. But T_(d) is an internally computedvalue, using the internal clock of the microprocessor 910 or usinganother device associated with the microprocessor 910. The beginning ofthe time interval T_(d) is known to the microprocessor 910 because themicroprocessor 910 initiates the pass. The end of the time intervalT_(d) is known from the time when the Doppler shift drops to zero. Thisis sensed by the proximity sensor LBS in FIG. 11 , when the arm TA hitsthe stop RB.

To recapitulate: the Doppler shift, indicated in pulse train 922 in FIG.14 , is used to measure the initial speed of the launched ball. When theDoppler shift indicates that the speed of the launched ball falls tozero, it is assumed that the player has caught the ball. The timebetween launch and catch, T_(d) is then computed.

When the Doppler shift indicates that the ball is again in motion, it isassumed that the player has shot the ball. The Doppler shift is thentaken as indicating the horizontal velocity V_(h) in FIG. 13D. When theball reaches the basket, the time of flight of the ball, T_(p) can becomputed.

The Doppler shift and T_(p), the time of flight of the player's shot,are values determined by external events. The flight time of the pass tothe player, T_(d) is computed internally, as the interval between (1)initiation of the launch of the ball, which is under control of themicroprocessor 910, and (2) the drop of the Doppler shift to zero,indicating zero speed in the ball. In one embodiment of the Doppler, thesignal is continuous. It transmits a continuous 24 GHz signal. Thesignal it receives back from a moving target is slightly shifted infrequency above or below 24 GHz according to the velocity of the target.When mixed together (transmitted and received signal), a differencesignal results. The frequency of this difference signal is proportionalto target speed. The difference signal is what is input to the firstamplifier stage of the ejector 20′ circuit. So the changes inamplification occur as a function of time from an event, the ejectorthrowing the ball in the first case, and the player shooting the ball inthe second case.

In one embodiment, the ejector 20′ which launches a basketball pass at atime T1, a radar gun which measures speed S of the basketball uponlaunch and a control which knows time T1, identifies a time T2, when thespeed measured by the radar gun falls below a first threshold, detects atime T3, occurring after time T2, when speed measured by the radar gunrises above a second threshold, learns that the basketball scored a goalat time T4 after a shot by the player, computes a pass flight time PFT,based on the equation PFT=T2−T1, computes a distance D based on theequation D=PFT×S, computes a hold time H based on the equation H=T3−T2,and computes a shot flight time SFT based on the equation SFT=T4−T3. Inanother embodiment, SFT can be computed by dividing the Distance, D(already computed) by the Player's horizontal velocity, V_(ox). Itshould be understood that SFT could be measured by the means written ifevery shot was a make.

Thus, to repeat, the computations of FIGS. 13A through 13G are based ononly two variables whose values depend on external events, and thosevariables are (1) DELTA-F in equation A3 in FIG. 13A and (2) T_(p) inequation B2 in FIG. 13B, which is the flight time of the player's shot.

The use of the measurements and calculations (e.g., in customizedcomparison reports) is described later herein.

Referring back to FIG. 10 , as with the embodiment shown relative toFIG. 1 , note that the ejector 20′ has the storage device 44′ forstoring information, data and statistics regarding the player'sshooting. As with the embodiment described earlier herein, a portablestorage device 210, such as a USB drive, flash drive or other memory orstorage device may be used to enable the user to port to a USB port (notshown) on the ejector 20′ and download information, such as a playerroster, upload the statistics and data from the ejector 20′ to thecomputer 202. The first user or users may then access the website WS viathe internet using the computer 202 and upload those statistics to aserver 206 associated with the website WS for use as described herein.Alternatively, the ejector 20′ may include a conventional wirelesscommunication device 145′ to enable the user to wirelessly transmit thedata and statistics from the ejector 20′ directly to the computer 202 orother device or directly to the website WS. Similarly, the secondcomputer 204 may upload data and statistics from the second system 208,for example, using another portable storage device 210 and the remotecomputer or server 204 (or wirelessly) to the website WS and thecomputer 206 associated therewith.

After the data and statistics from one or more players, such as PlayersA and B, is captured or measured and has have been uploaded to thewebsite WS and its associated server 206, the first and second users canelect to make the data and statistics public so that they can be used byothers, elect to keep the data and statistics private for use only bythemselves or some combination thereof. The first and second users mayalso view, save (locally or on a remote server, such as the website WSserver, or portable storage device), create and print customizedreports, use customized reports regarding a player using the data andstatistics. Comparison reports and charts of players' data, statisticsand rankings from the same or different teams, the same or differentgeographic territories or other criteria, such as gender, age or skilllevel may also be created, viewed, stored, printed and used as describedand shown later herein.

Advantageously, therefore, the system according to another embodimentenables a user to improve the player's shooting efficiency by, amongother things, comparing shooting statistics and rankings of players,regardless of whether the players are using the same ejector 20′, usingdifferent ejectors 20′, shooting at the same or different times,shooting at the same or different geographic locations, or the like.

Referring now to FIG. 16 , an overall schematic view of the methodologyand process for using the system 200 is shown. Initially, the userregisters (block 220) the ejector 20′ by accessing the website WS, whichwill be described later herein relative to FIG. 17 . The user createsand stores team information (block 222) using by accessing the websiteWS using, for example, computer 202 and such process is described laterherein relative to FIGS. 35 and 18 . The user creates and stores a teamroster and its players, and that data for players of the team is storedon the website WS (block 224), which is described later herein relativeto FIGS. 36, 37 and 18 . After the user has stored the information anddata on the website WS, the team and player data information may bedownloaded (block 226 in FIG. 16 ) to the ejector 20 and this procedureis described relative to FIG. 19 .

In order to utilize and compare statistics or data from shooters usingmultiple ejectors 20′ which are situated at the same or differentgeographic locations, it is necessary to calibrate each ejector 20′(block 228), and this procedure is described in more detail relative toFIG. 21 . After the ejector(s) 20′ is/are calibrated, the players,teams, coaches and other users may use the ejector 20′ (block 230). Inthis regard, the players, teams and coaches may use the ejector 20′ in atraditional manner, as described earlier herein relative to FIGS. 1-9 ,including utilizing the shooter challenge routines 32 a′, the othershooting challenges, or the ejector 20′ may be used by the same ordifferent teams. In general, the use of the ejector 20′ is describedlater herein relative to FIG. 20 .

Returning to the overview description in FIG. 16 , after the ejector 20′as described is used, shooting statistics and data are captured by theejector 20′ (block 232 in FIG. 16 ), those statistics or data may thenbe used, uploaded to the portable storage device 210, computer 202,transmitted or uploaded to website WS server 206 in a manner describedlater herein relative to the procedure shown in FIG. 26 . After thestatistics and data described earlier herein are captured and uploadedto the website WS server 206, the user (such as players, coaches orother interested users or persons) may create, view, download, save themon a local server or storage associated with the computers 202, 204,remote server or portable storage device (such as a flash drive),publish, share and/or print customized reports using the data andstatistics. The creation and use of customized reports and use isdescribed in more detail herein relative to FIGS. 27, 28A-28B and usethe customized reports created to improve the players' shooting andbasketball playing ability and skills (block 234). The overall procedureand use of the system then ends. More detailed descriptions of theforegoing will now be provided.

Referring now to FIGS. 17-19 , a process and procedure for registeringan ejector 20′ and for creating and downloading a team roster of playersto the ejector 20′, along with a plurality of associated graphical userinterfaces, shown in FIGS. 30-41 , will now be described. Referring toFIG. 17 , the coach or user accesses the website WS, which is shown inthe illustration as being the website located at the domain namewww.shootaway.com. The screen shots or graphical user interfaces inFIGS. 30-41 are presented to the user when he or she accesses thewebsite WS. Once the website WS is accessed (block 250 in FIG. 17 ), theuser is presented with and uses the graphical user interface 260 (FIG.30 ) and enters the serial number of the ejector 20′ and anauthentication number at the locations 262 and 264 on the graphical userinterface as illustrated in FIG. 30 (block 252 in FIG. 17 ). In theillustration being described, the authorization code inserted in thearea 264 in FIG. 30 is provided by the manufacturer of the ejector 20′.In this regard, each individual ejector 20′ has a unique serial numberand has the authorization code associated with it. The user is providedthis authorization code as a means of securely accessing the website WS.The user may be assigned and be required to enter a user name and apassword for the user to access their account in the future. This username and password may be communicated or provided to the user, forexample, in an email message 266 (FIG. 33 ) communicated to the user. Ina conventional manner, the website WS presents the user with a graphicaluser interface 268 (FIG. 31 ) after the serial number and authorizationcode are accepted by the website WS whereupon the user can enter his orher name, create a user name and password and have an assigned emailaddress as illustrated in the FIG. 31 . In this regard, at using thegraphical user interface 268, the user can enter his or her first andlast name, user name, password and an email address and then create andaccount at the website WS by actuating the electronic “create account”button 270 in FIG. 31 . Once the information is entered, the user cancreate the account by clicking the electronic “create account” button270 in FIG. 31 whereupon the website WS creates a user account for theuser.

In response to this input, the website WS generates a message, which isillustrated in FIG. 32 on the graphical user interface 272, whichinforms the user to check his or her email address, one illustrativeemail confirmation or notice is shown in the FIG. 33 (block 254 in FIG.17 ) which informs the user of the general overview of the system 200 aswell as provides an electronic link 267 in FIG. 32 (block 256 in FIG. 17) for enabling the user to log on to the account that the website WScreated and associated with the user.

Once an account is created, the user may go to the website WS (block 258in FIG. 17 ) and log in using their newly created user name andpassword. The first time the user accesses the website WS he or she isdirected to a “create roster” procedure or routine which will now bedescribed relative to FIG. 18 (block 259 in FIG. 17 ).

In one illustrative embodiment and after registering the ejector 20′,the user is enabled to create rosters and add teams and players, forexample, up to twenty-seven players per team, although the number ofplayers could be more or fewer, using the website WS. Each player isassigned a digital or numeric code that they will use to enter each timethey use the ejector 20′. Once the roster has been entered by the useron the website WS, the user will be prompted to and may export it (orsave it) to a portable storage device 210, such as a USB drive, thumbdrive, flash drive or the like. The ejector 20′ comprises a port orinterface (not shown) that receives the portable storage device 210 sothat the data thereon can be downloaded to the ejector 20′ using theimport button 118 mentioned earlier herein relative to FIG. 3 .

In one illustrative embodiment, two groups or teams of players within,for example, a school or organization can be tracked by one ejector 20′,and the website WS will allow for at least two groups or teams to betagged to each ejector 20′ that was entered into the area 262 on thewebsite WS associated with the ejector 20′. For example, if a highschool boys and girls teams purchased a single ejector 20′ together, theejector 20′ will track twenty-seven players for the boy's team andtwenty-seven players for the girl's team. In this regard, the system 200contemplates that each of the boys and girls teams has created anaccount tied to the ejector 20′ serial number and authentication codethat was provided as mentioned earlier herein. In one illustrativeembodiment, only two individuals, such as coaches, may be registered orassociated with one ejector 20′ when accessing the website WS. A thirdor other user may be associated with the ejector 20′, but only if one ofthe prior two users has been deleted or disassociated with the ejector20′ serial number.

In the manner described later herein, once the ejector 20′ is registeredusing the procedure in FIG. 17 and the roster is created using thewebsite WS, including team and players (for example, up to twenty-sevenplayers in one illustrative embodiment), the user(s) will be allowed tolog onto and use the ejector 20′ by using the interface 40 (FIGS. 3-3D)and input the roster onto the ejector 20′. In this regard, it isimportant to note that once the team or player information and data isstored by the user on the website WS, it may be imported into theejector 20′. Individual players can be selected by using the digitalcode that is assigned to each player at the time the roster is createdin the manner described later herein. In this regard, the user uses theinterface 40 and depresses a button such as the pre-programmed drillsbutton 278 (FIG. 3B) which is a button used for both selectingpre-programmed drills and selecting the player who is shooting. Once thepre-programmed drills button 278 is depressed, a player's three-digitcode will appear on the display 45′. If necessary, the user may togglethe pre-programmed drills button 278 to scan through and select onedigital number assigned to the desired player. In the illustration beingdescribed, the digital code is displayed on the display 45′ and if theuser scrolls through the digital code and leaves the digital code on thefront scoreboard display 45′ for two or more seconds, the ejector 20′will recognize the player and will begin tracking and storing thatplayer's shooting statistics and data. After the ejector 20′ recognizesthe player, the pre-programmed drills button 278 may be used in aconventional manner to select one or more pre-programmed drills that arestored on the ejector 20′.

As will be described in more detail later herein, after a shootingsession, the statistics and data associated with the team or one or moreplayers may be uploaded to the website WS. In this regard, the portablestorage device 210 mentioned earlier herein, such as a USB flash drive,may be inserted into the port, such as a conventional USB port (notshown) on the ejector 20′, and the export button 120 on interface 40 maybe actuated so that the shooting statistics and data associated with ashooting session may be downloaded or exported to the portable storagedevice 210. The portable storage device 210 may then be ported to astorage device or computer, such as computers 202 or 204 (FIG. 10 ), andthe shooting statistics and data uploaded to the user's account at thewebsite WS. In this regard, a session file, which is a comma delimitedfile containing the data and shooting statistics associated with asession of shooting, may then be uploaded to the website WS using animport button 280 (FIG. 35 ) on the graphical user interface 292.

Having described the procedure for registering the ejector 20′ andprovided a general overview of the tracking system and features of theembodiment being described, a more detailed description of variousfeatures of embodiments will now be described. As mentioned earlier, itis necessary to create a roster of teams and players on the website WSand that roster of teams and players may then be downloaded to theejector 20′. Again, after the ejector 20′ is used during a shootingsession, the data and statistics may be uploaded to the website WS, forexample, using the import button 280 (FIG. 3 ) which is provided in thegraphical user interface 292 (FIG. 35 ). The user logs onto the websiteWS (block 282— FIG. 18 ) using the graphical user interface 284 (FIG. 34) which is provided by the website WS after the user has created hisuser account as will now be described. After the ejector 20′ isregistered, a roster is created using the procedure to create a rosterof team(s) and players, which will now be described relative to FIG. 18.

As illustrated in FIG. 18 , the user enters his username and password inthe areas 286 (FIG. 34 ) and 288, respectively, and then actuates thelogin button 290. The user will be presented first with the ability toadd a team (block 294 in FIG. 18 ) and create a roster link using thegraphical user interface 292 (FIG. 35 ) presented by the website WS.After log in, the user uses the graphical user interface 292 and entersa team or group name (“SPUTS” in the example) at area 296 and identifiesan associated gender using the electronic buttons 298. The website WSalso asks the user to identify a team number from 0-9 in the area 300 ofthe graphical user interface 292. It is important to note that thissingle-digit number will appear as the first digit of the digital codeassigned by system 200 to each shooter who will be using the shottracking system in accordance with the illustration being described. Thedigital code in the illustration associated with each player is a threedigit code in the embodiment being described, but it could be anotheralphanumeric or digital code of longer or shorter length.

Once the team, gender and team number is assigned by the user, the useractuates (block 294 in FIG. 18 ) the electronic submit button 302 (FIG.35 ) whereupon the team is created. Once a team has been created, theuser may select a players link button 304, which is the electronic linklabeled “Players” in the top banner portion of the graphical userinterface 306 (FIG. 36 ). Whereupon the user is presented with thegraphical user interface 306 which enables the user to link or associateplayers with the team that was created using the graphical userinterface 292 in FIG. 35 . Thus, at block 295 (FIG. 18 ), the userchooses the add player link 304 (FIG. 36 ) whereupon the user ispresented with area 223 (FIG. 36 ) containing the login number area 308,first name area 310, last name area 312 and a drop down menu 314 forselecting the team. Note that a login number entered in the area 308 ofinterface 306 is a number associated with the player and that playerwill use when logging onto and using the ejector 20′ to collect data andshooting statistics during a shooting session. In the illustration beingdescribed, the login number will be assigned by the user by selecting anumber from 0-99, which will be combined with the team number prefixdigit, mentioned earlier relative to area 300 in FIG. 35 , to create thethree-digit code. In one illustrative embodiment, the number of playersassociated with a team is limited to 27, but it is to be understood thatmore or fewer players may be assigned to a team if desired.

The information is submitted to the website WS by actuating theelectronic submit button 316 (FIG. 36 ). In response, the website WSpresents the user with a graphical user interface 318 illustrated inFIG. 37 which shows the team and the players that are associated withthe team in the area 320 of the graphical user interface 318.

Referring back to FIG. 18 , after the user enters the players name,assigns a login number, birth date and associates the player with a team(block 297 in FIG. 18 ), it is determined at decision block 299 whetherthe player wishes to add another player. If yes, then the routine loopsback to block 297 as shown, but if not, the routine proceeds to block301 in FIG. 18 where the roster of players is stored on the website WSas a comma delimited file in the illustration being described. In thisregard, the information or data associated with the roster may be storedon the local computer 202, 204 and/or the remote server 206 associatedwith the website WS. Alternatively, the data may be stored on a portablestorage device 210 of the type mentioned and described earlier herein.

After the roster is created as described relative to FIG. 18 , theroster may be downloaded to the ejector 20′ which will now be describedrelative to FIG. 19 .

Referring now to FIG. 19 , the rosters are downloaded to the ejector 20′after the rosters are created and the procedure for downloading will nowbe described. The procedure begins by the user logging onto the websiteWS using the graphical user interface 284 (FIG. 34 ) and actuating theelectronic button 290 (block 330 in FIG. 19 ). At decision block 332, itis determined whether the user has entered a roster to download to theejector 20′, if not then the user uses the procedure described relativeto FIG. 18 to create a roster on the website WS (block 334 in FIG. 19 ).If the decision at decision block 332 is affirmative, then the userselects the export link 293 (FIG. 35 ) at block 336 in FIG. 19 . Oncethe user selects the export link 293 in the graphical user interface292, the user is presented with a graphical user interface 292 (FIG. 38) by the website WS. The user is provided with the ability to export orsave the play list file of the roster which includes the data andinformation relating to a team and its players, onto a storage device210 (FIG. 10 ). In this regard, the player is provided with thegraphical user interface 340 (FIG. 39 ) showing storage areas on his orher computer, such as computer 202 or 204, or other device the user usesto access the website WS. The user selects the player list file(identified in the FIG. 39 as “plyrlist”) and saves it out using theelectronic button 342 (FIG. 39 ) onto the portable storage device 210 ofthe type mentioned earlier herein. The “plyrlist” file, which comprisesthe information regarding the team, the players identification code,name, and the like, are imported to the ejector 20′ using the USB port(not shown) using the import button 118 (FIG. 3 ) mentioned earlierherein. Although the embodiment being described herein discusses orutilizes the portable storage device 210 for importing and exportingdata and statistics to and from, respectively, the ejector 20′, it isimportant to understand that these functions and features could be donewirelessly with conventional wireless technology. Also, it is envisionedthat the ejector 20′ could comprise means and apparatus for uploadingand downloading information directly to the website WS to the computers202 or 204 and the like using conventional wired or wireless technology,thereby reducing or eliminating the need for the use of the portablestorage device 210. It is also important to note that the computers 202and 204 may be stand alone computers, portable computers or smart phonesor devices, such as an Apple iPhone, Android, iPad, Blackberry, smartphone or other similar smart device that is capable of receiving andtransmitting information to and from the website WS.

In the illustration using portable storage device 210, the user insertsthe device to a port (not shown) on the ejector 20′ and actuates theimport button 118 (FIG. 3D), which causes the “plyrlist” data to thedownloaded onto the ejector 20′. This is done at block 338 in FIG. 19 .

After the rosters are downloaded to the ejector 20′, the routine in FIG.19 ends. It is important to understand that once the ejector 20′ hasbeen programmed with the roster(s) of teams and/or player(s), theejector 20′ is ready to use and collect statistics as provided herein. Ageneral description of use will now be described relative to FIG. 20 .

The procedure starts at block 350 (FIG. 20 ) where the ejector 20′ iscalibrated at the geographic location where it is located, such as agymnasium or basketball floor. The calibration procedure is describedlater herein relative to FIG. 21 . The calibration procedure isimportant so that the data and statistics captured or collectedregarding a shooting session for one or more players using the same ordifferent ejectors 20′ will be comparable. For example, the data andstatistics associated with a player shooting at a particular position,such as along a vector associated with the position 8 (FIGS. 2 and 10and the button labeled 8 in FIG. 10 ) will be comparable to a secondplayer B who is shooting from that same position, position 8 in theexample.

Once the ejector 20′ is calibrated, then shooting data and statisticsmay be compared with reasonable reliability and relatively low margin oferror. As mentioned earlier, the players A and B may be on the same teamshooting at the same location, may be on the same team shooting atdifferent locations, may be on the same team shooting at the same time,may be on the same or different teams using the same ejector 20′, ondifferent teams using different ejectors 20′, may be on different teamsusing different ejectors 20′ at the same or different times, and thelike.

Returning to FIG. 20 , the player selects at least one or a plurality ofpositions from which to shoot (block 354), which is described laterherein relative to FIGS. 23A, 23B, 24A and 24B. The player shoots untilthe selected routine, whether it be a pre-programmed drill routine or auser-programmed drill routine, ends at block 356. In one embodiment, theejector 20′ may be programmed to eject balls 12′ in the order in whichthe buttons 41 (FIG. 3A) are selected. In other words, the controller32′ on the ejector 20′ will cause the balls to be ejected from theejector 20′ in the order in which the buttons were selected. The system200 stores the plurality of positions selected and then the ejector 20′ejects the correct number of balls to those locations in the order theywere programmed. It may also eject the balls in order from left to rightas viewed on the interface 40 as far as the plurality of the positionsno matter the order they were programmed. For example, if the userselected or actuated buttons 0, 11, 5 and 16 (FIGS. 3A-3B) on interface40 in this order, then the controller 32′ would cause the balls to beejected from the ejector 20′ to the corresponding location 0, 11, 5 and16 (FIG. 10 ) in the order in which the buttons 41 (FIG. 3A) wereselected, thereby enabling the user to program the positions in anon-serial order which enables the ejector 20′ to accurately simulategame-playing situations. This programming ability enables the user tocreate millions of possible shooting drills or routines.

After the shot selection is determined and the player shoots until theroutine ends (FIGS. 23A, 23B and 24A, 24B), it is determined whether ora not a new shooter, the same shooter or whether the shooter(s) are doneshooting. If they are the same or if there are new shooters, then theroutine loops back to block 354 as shown, but if the shooting is done,then the user may export the data and statistics regarding the shootingsession (block 360), which is described later herein relative to FIG. 25. At decision block 362 (FIG. 20 ), the user who is exporting, uploadingor saving the data or statistics may decide to make the data orstatistics public or available for use or to view by others at decisionblock 362. If the decision is not to make them available, then theroutine proceeds to block 364, but if the decision is to make themavailable, then the procedure enables the data and statistics to be madeavailable for use by others at block 366, and this procedure isdescribed later herein relative to FIG. 25 .

It is then determined whether the user wants to view and/or make local,regional, national or international comparisons of the data orstatistics from a shooting session at decision block 368. If the userdoes not, then the procedure ends, but if the user does wish to view,print and/or make local, regional, national or internationalcomparisons, then the routine proceeds to block 370 (FIG. 20 ) whereinthe system proceeds to block 434 in FIG. 25 .

As referenced in FIG. 20 , block 350 and for the reasons mentionedearlier, the ejector 20′ is preferably calibrated and the procedure tocalibrate the ejector 20′ is shown in FIG. 21 , which will now bedescribed. The calibration procedure starts by the user positioning theejector 20′ underneath the net or rim 14′ adjacent to the backboard 16′.The ejector 20′ is centered lengthwise (baseline to baseline) on thebasketball playing area or court with a center line of the basket (endto end) and thus is equidistant from each of sidelines and side edges ofthe backboard, all of which is shown in block 371. Calibrating theejector 20′ in this manner facilitates ensuring that all shots takenfrom, for example, a shooting location such as the shooting locationassociated with the button labeled 8 (FIG. 3A) associated with theposition 8 (FIG. 10 ), will be on a dead-center line of the court as itbisects a baseline where the ejector 20′ is located to the opposingbaseline at the opposite end of the court. Accurately positioning theejector 20′ also assures accurate measurements by the Doppler System 800(FIG. 10 ) and comparisons.

As shown in block 352 in FIG. 20 , after the ejector 20′ is calibrated,the player may log in and use the ejector 20′ and the procedure for login will now be described relative to FIG. 22 . The player starts byusing the pre-programmed drills button 278 on the interface 40. In theexample, the user enters his 3 digit code by first pressing the userbutton 116 in FIG. 3C the pressing the number of balls in FIGS. 3A and3B until he/she has entered the complete code. The user then presses thePre-Programmed Drills button 278 (FIG. 3B) to enter that code. The usercould also depress and hold the user button in FIG. 3C for 4 seconds,for example. If this is done, the system 200 enables the user to scrollthrough all the user codes using the up/down arrows 43 (FIG. 3B). Whenthey see their code, the user actuates or presses the Pre-ProgrammedDrills button to enter it. Thereafter, it is determined at block 372(FIG. 22 ) whether the player logged in with a code that exists (asdownloaded and stored to the ejector 20′ by the user) or that has beenprogrammed into the ejector 20′ at decision block 374. If he or she hasnot logged in properly, then an error code is displayed, which in oneembodiment is the three letters “EEE” on the interface 40′ on thedisplay 42′ (FIG. 10 ) at decision block 376.

If the decision at decision block 374 (FIG. 22 ) is affirmative, thenthe ejector 20′ is ready to use and collect data and statistics (block378) for the player regarding the player's makes and total shots for theplayer at each shooting location from where the player shot at block378. Thereafter the routine ends.

It is important to understand that once the ejector 20′ has beencalibrated and the player has logged in, the player may begin a shootingsession and shoot until the shooting session ends, as mentioned earlierrelative to block 356 in FIG. 20 . For ease of description andillustration, it is to be understood that the Doppler System 800described earlier herein may be used during a shooting session, althoughit is not mandatory. Thus, measurement and calculations from the DopplerSystem 800 may be used alone or in combination with other features ofother embodiments described herein. For ease of description, variousprocedures will be described herein as being Doppler dependent, whichmeans that the procedures are conducted using the Doppler System 800 andmeasurements sensed and calculated therefrom. Some of the features orembodiments of the invention will be repeated, but without use of theDoppler System 800. Accordingly, it should be understood that while someof the embodiments utilize the Doppler System 800 and its calculationsor measurements, it is not mandatory and there are features of variousembodiments that are not dependent on the measurements performed by theDoppler System 800. For further ease of illustration and description,some of the procedures and embodiments described herein will be firstdescribed as without the use of the Doppler System 800, followed by adescription of a similar embodiment but using the Doppler System 800.

Referring now to FIGS. 23A and 23B, a process is shown for the user toselect a shooting workout for the ejector 20′ to collect and savestatistics and data relative to the workout, such as the number of shotsmade, number of total shots taken and the like at each of thepredetermined or preselected shooting locations (e.g., the locationsassociated with the buttons 0-16 and labeled 41 in FIGS. 3 and 3A-3D andthe associated positions or locations 22′ (FIG. 10 ). The routine startsat block 380 (FIG. 23A) wherein the shooter chooses his shootinglocations 0-16 on the interface 40 (FIGS. 3 and 3A-3D) by actuating oneor more of the plurality of buttons 41. Alternatively, the user mayselect the pre-programmed drills button 278 (FIG. 3B) to cause theejector 20′ to run through one or more pre-programmed drills that arestored on the ejector 20′. If no locations are selected by the user, theejector 20′ will treat the shooting session as an “open” session duringwhich the ejector 20′ will fire balls in the direction it is pointingset physically by the user pointing the ejector to the left corner ortop of the key. There is no random shooting to different spots.

The routine proceeds to block 382 (FIG. 23A) wherein the shooter choosesthe time delay between the pass by using the area of the interface 40(FIG. 3A) labeled step two with the plurality of buttons 43. Timebetween passes can be from approx 1.5 seconds to 99 seconds. The shooterthen chooses the number of balls 12′ to be passed to each locationbefore the ejector 20′ moves to the next shooting location (block 384).The shooter actuates the up and down arrow button 77 (FIG. 3D) to enterthe total number of shots to be passed to each of the shooting locationsbefore the ejector 20′ moves to the next shooting location. In oneillustrative embodiment, the shooter or user may choose (block 386) ifhe or she wants to require shots to make or made in a row before theejector 20′ moves to the next shooting location by actuating the button74 (FIG. 3C). Once the ejector 20′ is programmed, the user may press thestart button 70 (FIG. 3D), as indicated at block 388 in FIG. 23A.

At block 390 in FIG. 23A, the shooter begins shooting at a first one ofthe selected shooting locations and the ejector 20′ saves or recordseach made shot at each shooting location on the storage device 44′ (FIG.10 ). The ejector 20′ will also save a total number of shots at eachshooting location. If no spots or shooting locations were initiallyselected by the user at block 380 (FIG. 23A), the ejector 20′ will throwpasses in the direction it is pointing and save the makes and misses inthe “open” shooting location in the memory or storage device 44′.

The routine proceeds to block 392 (FIG. 23B) where the shooting sessionor workout ends when the player either presses button 72 (FIG. 3D) orthe workout has come to an end. For example, a workout or shootingsession may come to an end after the ejector 20′ has ejected or launchedthe total number of shots to each of the locations selected, thepre-determined drill selected has been performed, or a shooting goal orone of the shooting challenges described earlier herein has beenachieved. The routine proceeds to decision block 394 (FIG. 23B) where itis determined if the player has finished shooting. If the player has,then the player or user powers off the ejector 20′ or logs off bypressing (block 396) the user button 116 (FIG. 3C). Thereafter, it isdetermined whether another player is desirous of shooting at decisionblock 398 and if he is, then the routine proceeds back to block 380(FIG. 23A) as shown. If the decision at decision block 398 is negative,then it is determined whether or not an interested user, such as a coachor other user, desires to upload the shooting session data or statisticsto a remote computer or server or website (block 400 in FIG. 23B). If hedoes not, then the routine ends, but if he does, then the routineproceed to the upload shooting sessions data and statistics routine(block 402), described later herein relative to FIG. 26 , which will bedescribed later herein.

If the decision at decision block 394 is negative, then the routineproceeds to decision block 404 where it is determined whether or not theplayer wants to continue the current shooting session or workout. If hedoes, then the routine loops back to block 388 (FIG. 23A) as shown. Ifnot, then the routine loops back to block 380 as shown.

Having described the general procedure for one embodiment that is notdependent on the Doppler System 800, now the procedure for selecting ashooting work out and for collecting data and statistics relative to theshooting session that utilizes the Doppler System 800 and itsmeasurement or calculations will now be described relative to FIGS. 24Aand 24B.

In FIG. 24A the routine begins at block 406 wherein the shooter chooseshis shooting locations 0-16 on the interface 40 (FIG. 3 and FIGS. 3A-3D)by actuating one or more of the plurality of buttons 41 as describedearlier. Alternatively, the user may select the pre-programmed drillsbutton 278 (FIG. 3B) to cause the ejector 20′ to run through one or morepre-programmed drills that are stored on the ejector 20′. If nolocations are selected by the user the ejector 20′ will treat theshooting session as an “open” session during which the ejector 20′ willfire balls in the direction it is pointing set physically by the userpointing the ejector say to the left corner or top of the key.

The routine proceeds to block 408 (FIG. 24A) wherein the shooter choosesthe time delay between the pass by using the area of the interface 40′(FIGS. 3 and 3A-3D) labeled step two with the plurality of buttons 43.In the illustration, the shooter can choose between 15 seconds up to 60seconds between passes from the ejector 20′. The shooter then choosesthe number of balls to be passed to each location before the ejector 20′moves to the next shooting location (block 410). The shooter actuatesthe up and down arrow button 77 to enter the total number of shots to bepassed to each of the shooting locations before the ejector 20′ moves tothe next shooting location. In one illustrative embodiment, the shooteror user may choose (block 412) if he or she wants to require shots tomade or made in a row before the ejector 20′ moves to the next shootinglocation by actuating the button 74 (FIG. 3C). Once the ejector 20′ isprogrammed, the user may press the start button 70 (FIG. 3D) asindicated at block 414 in FIG. 24A.

At block 416 in FIG. 24A, the shooter begins shooting at a first one ofthe selected shooting locations and the ejector 20′ saves or recordseach made shot at each shooting location on the storage device 44′. Theejector 20′ will also save a total number of shots at each shootinglocation. If no spots or shooting locations were initially selected bythe user at block 406 (FIG. 24A), the ejector 20′ will throw passes inthe direction it is pointing and save the makes and misses in the “open”shooting location in the memory or storage device 44′. The routineproceeds to block 418 (FIG. 24B) where the shooting session or workoutends when the player either presses button 72 (FIG. 3D) or the workouthas come to an end. For example, a workout or shooting session may cometo an end after the ejector 20′ has ejected or launched the total numberof shots to each of the locations selected, the pre-determined drillselected has been performed or a shooting goal or one of the shootingchallenges described earlier herein has been achieved. The routineproceeds to decision block 420 (FIG. 24B) where it is determined if theplayer has finished shooting. If the player has, then the player or userpowers off the ejector 20′ or logs off by pressing (block 422) the userbutton 116 (FIG. 3C). Thereafter, it is determined whether anotherplayer is desirous of shooting at decision block 424 and if he is, thenthe routine proceeds back to block 406 (FIG. 24A) as shown. If thedecision at decision block 424 is negative, then it is determinedwhether or not an interested user, such as a coach or other user,desires to upload the shooting session data or statistics to a remotecomputer or server or website (block 428 in FIG. 24B). If he does not,then the routine ends, but if he does, then the routine proceed to theupload shooting sessions data and statistics routine, described laterherein relative to FIG. 26 , which will be described later herein.

After the decision block 420, it is determined whether or not the playerwants to continue to work the current shooting session or workout (block420). If the decision at decision block 420 is negative, then theroutine proceeds to decision block 432 where it is determined whether ornot the player wants to continue the current shooting session orworkout. If he does, then the routing loops back to block 414 (FIG. 24A)as shown. If not, then the routine loops back to block 406 as shown.

It is extremely important to note a difference between the proceduredescribed and shown in FIGS. 24A and 24B relative to the procedure inFIGS. 23A and 23B. The procedure in FIGS. 24A and 24B, the system 200and Doppler system 800 includes Doppler data and statistics. Asmentioned earlier herein, these Doppler data, statistics, measurementsor calculations include measurements and calculations of distancebetween the player and the ejector 20′, the shooter's release time(i.e., the time it takes from when the shooter receives the ball andthen shoots the ball towards the hoop 14′), the arc or angle of theshooter's release, and the arc or entry angle of the shot as the shotenters the hoop 14′. In the manner described later herein, this Dopplerdata and statistics may also be used for comparisons, creating reportsand the like as described later in. The user holds spot 0 button 41(FIG. 3A) for 4 seconds to disable or to turn on the Shot Trackerfeature. In the illustration being described, the ejector 20′ is alwaysin an “on” state (unless the user has turned off the Shot Trackerfeature) so that ejector 20′ is always collecting Doppler data andstatistics, but collecting and using this data is not mandatory.

Referring back to FIG. 24B, If the decision at decision block 424 isaffirmative, then the new shooter logs onto the ejector 20′ using thelog in procedure described earlier herein relative to FIG. 22 , as shownat block 426 in FIG. 24B. Thereafter, the routine loops back to decisionblock 406 as shown. If the decision at decision block 424 is negative,then the routine proceeds to decision block 428.

If the decision at decision block 424 (FIG. 24B) is negative, then it isdetermined whether or not an interested user, such as a coach, desiresto upload the shooting session data or statistics to a remote computeror server or website (block 428). If he does not, then the routine ends,but if he does, then the routine proceed to the upload shooting sessionsdata and statistics routine (block 430) described later herein relativeto FIG. 26 .

After the decision block 420 (FIG. 24B), it is determined whether or notthe player wants to continue to work the current shooting session orworkout. If the decision at decision block 420 is negative, then theroutine proceeds to decision block 432 where it is determined whether ornot the player wants to continue the current shooting session orworkout. If he does, then the routine loops back to block 414 (FIG. 23A)as shown. If not, then the routine loops back to block 406 as shown.

The user may turn power off by pressing the POWER SWITCH button in FIG.3C (bottom left corner of interface 40) the machine is powered down andthe procedures in FIGS. 23B and 24B will automatically go to END and theshooting data is stored.

After shooting is complete and the normal data and statistics andDoppler data and statistics are gathered, calculated and stored, forexample, by controller 32′ (FIG. 10 ) on the storage device 44′, thestatistics may be uploaded and stored to a local or remote computer,such as computer 202 or 204, or on a remote server or computer, such asthe server 206 associated with the website WS. FIG. 25 addresses thisfeature of one embodiment.

In FIG. 25 , it is determined at decision block 434 whether the userwants to upload data and statistics and store them on the local computerassociated with the user, such as a computer 202 or remote server orcomputer 204, in the example. If he does, then the routine proceeds toblock 436 whereupon the statistics are saved on the local computer 202,204 or other storage device so that they may be viewed locally using aconventional program such as Windows Internet Explorer or WindowsExplorer both of which are available from Microsoft Corporation ofRedmond, Wash., Safari available from Apple Computers of Cupertino,Calif. or other program capable of viewing html files. Note that thedata and statistics may be exported from the ejector 20′ using theexport button 120 (FIG. 3D) mentioned and described earlier herein. Asmentioned earlier herein, the data and statistics may be exported usingthe portable storage device 210 (FIG. 10 ), such as the thumb drive orflash drive mentioned earlier herein, may be downloaded to the computerusing a wired (e.g., RS232 cable) or wirelessly transmitted (e.g.,through a Wi-Fi connection) from the ejector 20′ as mentioned earlierusing conventional wireless technology.

As illustrated in FIG. 25 , block 436, one or more of the following dataor statistics may be saved, used, displayed on, printed into report andthe like using the local computer 202, 204:

Total shots

Total shots per player

Total make per player

Total shots at each location per player

Total makes at each location per player

Team rankings and comparisons

Two on two vs. Records

Print graphs and shooting reports

(Comparisons can be adjusted based on date data was collected fromejector 20′)

If Doppler System 800 is used, collect Doppler measured data (arch,distance, release time, release angle, entry angle).

A user may also wish to not only store, use and print data on the localcomputer, such as computers 202 or 204, but may also wish to upload thedata and statistics to, for example, a remote site or server, such asserver 206 in FIG. 10 , or remote website WS. The user would thenproceed to block 438 in FIG. 25 to export and upload the savedstatistics and data that are saved on the ejector 20′ for all or onlyselected ones of the shooters who were shooting during a shootingsession to a computer, such as computers 202 and 204 or to the remotewebsite WS and the server 206 associated therewith. Again, the datacould be uploaded using the internet, or wirelessly, such as through aWi-Fi connection or other data connection. As mentioned earlier herein,the portable storage device 210 (FIG. 10 ) may also be used to store thedata and statistics so that they can be accessed using a computer whichcan be used to upload the statistics to the website WS, for example.

In one illustrative embodiment, it is important to note that if thestatistics and data are uploaded to the website WS, the system 200comprises a tracking system that is adapted to enable and permit acollection of measured and comparison statistics and data to begenerated, stored, saved, viewed, published and used. For example,regional rankings and comparisons may be performed to rank and compareplayers who perform during the shooting session to other players in theregion. Similar rankings and comparisons could be made on a state-widebasis (e.g., all players within the state of Ohio), a nationwide, basis,or international rankings and comparison comparing all playersthroughout the United States of America, Italy, China, Japan and thelike. The system 200 and method described herein provide means anddevice for generating and using comparisons that can be adjusted basedupon numerous various parameters described later herein, such as ashooting date or date range when a shooting session occurred, age ofplayers, gender of players and the like. As illustrated in block 440(FIG. 25 ), the statistics and data that may be gathered, calculated,saved and stored:

Total shots

Total shots per player (pp)

Total make pp

Total shots at each location pp

Total makes at each location pp

Team rankings and comparisons

Two on Two vs. Records

Print graphs and shooting reports

Regional rankings and comparisons

State rankings and comparisons

National rankings and comparisons

World rankings and comparisons

(Again, comparisons can be adjusted based on the date the data wascollected from ejector 20′) It should be understand that the graphs andshooting reports could be printed by using, for example, a ticketprinter 46′ or any other printer, such as a local or remote printerassociated with computer or server 202, 204, server 208 or website WS.

If Doppler System 800 is used, Doppler measured data (arc, distance,release time, release angle θ_(r), entry angle θ_(e) is also collected)in the manner described earlier relative to FIGS. 13A-13B, 14 and15A-15D.

The procedure for uploading the shooting sessions to the website WS willnow be described relative to FIG. 26 . The procedure for uploadingshooting sessions data and statistics begins in FIG. 26 at block 442wherein the user powers up the ejector 20′ into standby mode which maybe manually selected by actuating the stop or standby button 72 (FIG. 3). If the data and statistics are to be uploaded non-wirelessly orwithout a hardwire connection to, for example, a computer 202, 204 or tothe website WS, then in one illustration this may be done using theportable storage device 210 (FIG. 10 as mentioned earlier). In thisevent, the user inserts the portable storage device 210 (FIG. 10 ) whichin the illustration being described could be a USB thumb drive into theUSB port (not shown) of the ejector 20′. Once the portable storagedevice 210 is inserted into the port (not shown) of the ejector 20′control board or controller 32′, the user may actuate the export databutton 120 (FIG. 3D) to save the sessions file (block 442 in FIG. 26 ).

It is important to understand that in one illustrative embodiment, thesessions data and statistics file includes all shooters' dates andstatistics and data associated with all shooting sessions they completedsince the last export of data, their nametag to the three digit playercode described earlier herein, number of makes and total shots in eachsession they shot each time from each shooting location. If the userwants to export the data without the use of the portable storage device210, then the user may do so, for example, wirelessly. For example, theuser would power up the computer 202 and use a wireless communicationdevice 145′ (FIG. 10 ), which in the illustration being described iscoupled to the controller 32′ and mounted on the ejector 20′. In theillustration being described, the wireless communication device 145′ maycomprise conventional Bluetooth technology or other dedicated wirelessor wired internet connection. If equipped with wireless communicationdevice 145′ that includes a wireless receiver and transmitter (FIG. 10), which is optional, the user would press the import or export buttons118, 120 to effect the import or export of data (FIG. 3D).Alternatively, a hard wire connection between an RS232 port on theejector 20′ may be used.

In the illustration shown in FIG. 26 , it is contemplated that theportable storage device 210 is used and the user takes the portablestorage device 210 to the computer 202 (block 444 in FIG. 26 ), insertsit, logs into the website WS using the graphical user interface 284described earlier herein relative to FIG. 34 . The user then selects thelink to import button 280 (block 445 in FIG. 26 ). In response to theuser actuating the import button 280 (FIG. 35 ), the user is promptedwith another graphical user interface 446 (FIG. 41 ) and with a browsebutton 448 which, when actuated, presents the user with view(s) of theircomputer so they can import the file. The screen shot of the graphicaluser interface 451 (FIG. 40 ) is illustrative. The illustrative file isshown as “SESSIONS” and labeled as 453 in FIG. 40 . After it isselected, the user may actuate the button 455 in FIG. 40 whereupon thefile is imported from the portable storage device 210 or computer 202and linked to the import sessions user interface 446 as illustrated inFIG. 41 . The user may then actuate the upload stats button 457 (FIG. 41) whereupon the system 10 causes the file to be uploaded to the websiteWS and the server 206 associated therewith.

As mentioned, the data is stored in a database 206 a (FIG. 10 )associated with the server 206. It is important to note that thedatabase 206 a is updated and retains cumulative shooting statistics foreach shooter on a team or roster. Thus, for example, if only two of tenshooters on a team shot during a shooting session, their data could beuploaded as described, but the database 206 a maintains cumulative datafor all members of the team regardless of when shooting occurred. Thisis useful for generating the comparison reports described later herein,some of which utilize lifetime shooting statistics.

Advantageously and as described, graphical user interface 451 (FIG. 40 )shows the sessions file as stored on the portable storage device 210,which is shown in the illustration as “removable disk (K)”. The userselects the “SESSIONS” file shown on the portable storage device 210 andactuates the open button 455 in FIG. 40 whereupon the sessions file dataand statistics are uploaded to the website WS and in the illustrationbeing described, stored on the server 206 associated with the websiteWS. In the illustration being described, the “SESSIONS” file includesall the information and data captured and referenced relative to thedata mentioned earlier herein relative to FIG. 25 . The website WSreceives the information and data and updates the database 206 a (FIG.10 ) that maintains a continuous cumulative database for each player andall the statistics and data associated with the player for all theshooting statistics that were captured. In the illustration beingdescribed, the database 206 a is set up that each session is tagged to aunique number which happens the date and time to the minute that it wasstarted. Thus the files can continuously be updated and added to.

Returning to FIG. 26 , it is important to note that if the Dopplerstatistics and measurements that were gathered and/or calculated duringan embodiment that used the Doppler System 800, then at the block 442,the sessions file referenced therein would also include the Dopplermeasurements and statistics which include distance of the shot, therelease time for the shot, the release arc of the shot and entry angleor arc of the shot. The Doppler measurement and statistics are embodiedand included in the sessions file and uploaded in the manner describedherein. As mentioned earlier herein relative to FIG. 16 , once the dataand statistics are captured and uploaded to the server 206 (FIG. 10 )associated therewith, the users may create, view, save, use and/or printcustomized reports and use the customized reports. The creation of thereports, use of the reports and the reports themselves will now bedescribed.

As mentioned earlier herein relative to block 234 in FIG. 16 , after thedata and statistics are captured, measured and/or calculated, they canbe viewed, stored, saved and used. In the embodiment being described,customized reports can be created and used. For example, the customizedreports can be viewed by a user, such as a coach, trainer or player, toimprove the player's basketball playing skills. For example, if a playerlearns and understands that his shooting efficiency at one location orarea on the basketball floor is below a predetermined desired shootingefficiency, then the player can program the ejector 20′ to increase thefrequency of practice shots at that position in order to improve theplayer's efficiency. The procedure for creating the customized reportswill now be described relative to FIG. 27 .

After the player has tracked their shooting data and statistics and theuser uploads the “SESSIONS” file containing the data and statistics tothe website WS, the user goes to the website WS login graphical userinterface 284 (FIG. 34 ) and logs into the website WS using his or herusername and password (block 450 in FIG. 27 ). The user may then actuatethe player's button 304 in the graphical user interface 306 (FIG. 36 )and is then presented with the listing of the players in area 320, asillustrated in FIG. 37 described earlier herein. At block 452 in FIG. 27, the user selects a particular shooter or shooters or even a team forwhich they would like an in-depth report.

The routine continues to decision block 454 wherein the user determineswhether or not it wants to do a chart type comparing to other shooters.If not, the routine continues to decision block 456 where it isdetermined whether the chart type for an individual shooter is aprogression chart. If it is not, the routine proceeds to block 458 andthe user selects chart type; Made/total Shots, Shots, Percentage,Percentile at each Shooting Location and/or Doppler data of statistics.

If the decision at decision block 456 is yes, then the routine proceedsto block 460 whereupon the user selects the date range they would likethe chart to include. For example, a beginning date, an ending date ortotal shots in a career which covers all dates is selected (block 460).After the procedures in block 458 and 460, the routine proceeds toallowing the user to select the rankings/chart at block 468 describedlater herein.

If the decision at decision block 454 is affirmative, then the userwishes to do comparisons to other shooters and the routine proceeds toblock 462 where the user selects the location they would like to includewhich could be shooters from the local team only, the local county only,the state (e.g., all shooters in the state of Ohio), the country (e.g.,all shooters in the U.S.A., France, Italy or China), or shooters fromaround the world. At block 464, the user selects the minimum and maximumage so that the report includes other shooters in the age range.Alternatively, the user may select all ages so that the report willcompare the player, such as player A, to one or more other players ofall ages. The routine continues where the user then selects (block 466)the shooting locations they wish to include in the chart or report. Inthe illustration being described, the shooting locations correspond tothe buttons labeled 0-16 in FIG. 3 and the shooting locations 0-16 inFIG. 10 . It should be understood that the selections mentioned inblocks 462-466 do not necessarily have to occur in any particularsequence.

The routine proceeds to block 468 where the user selects the rankings orchart type so that the chart or report is displayed on a screen,terminal or display, such as a monitor (not shown) coupled to thecomputer 202 or 204 or other display that the user is using to accessthe website WS. As mentioned earlier herein, the display may beassociated with a computer, such as computers 202, 204, or other smartdevice, such as an iPad, iPhone, Android, Blackberry or other devicethat has the capability of allowing a user to access, view and use thewebsite WS. Note that when the user selects which shooting locationsthey wish to include, they proceed to block 460 where the user selectsthe date range they would like the chart to include, including thebeginning date, ending date or the total shots in a career which coversall dates as explained earlier herein relative to block 460. After block460, the routine proceeds to block 468 where the user selects “showrankings” chart or report. As mentioned earlier herein relative toblocks 458 and 460, which concerns creating a chart or report when acomparison is not desired, after the user makes the selections referredto in block 458 and 460, the user selects the show rankings/chart atblock 468 as shown. It should be understood that the order of selectionin blocks 462-466 is not strict, and a user can select criteria in anyorder as described herein.

After block 468, the routine continues to block 470 where the user viewsthe rankings chart or report and then proceeds to decision block 472where it is determined whether or not the user wishes to print the chartor report created. If he does, then the chart or report is printed(block 474), and thereafter or if the decision at decision block 472 isnegative, then the user determines (block 476) whether or not he desiresto email or publish the newly-created chart or ranking. If he does, thenthe routine proceeds to block 478 or the user is provided with agraphical user interface in which the user can elect to email the chartor report or ranking or otherwise publish it. In this regard, thewebsite WS provides process and means for conventionally publishing thechart or report on website WS or using conventional social media, suchas Twitter®, Facebook®, YouTube® or the like.

If the decision at decision block 476 is negative or after thepublication referred to in block 478, the user determines at decisionblock 479 (FIG. 27 ) whether or not he wishes to create another chart orreport. If he does not, then the procedure ends, but if he does, thenthe procedure proceeds to block 452 where the user may again select theshooter, shooters or team they would like an in-depth report on. It isimportant to note that the general procedure and steps referred to inFIG. 27 are shown in the order mentioned, but they do not have to occurin this exact order and the user may create reports for an individualplayer, group of players or team and also create comparison reportsusing the graphical user interface and the criteria described hereinwhich may be selected in any order. In one form of the invention, thesorting variables may be presented on website WS as shown in FIGS. 46and 51 with selection buttons or boxes (not shown) next to the variablesfor selection.

It should also be noted that the procedure for creating the customizedreports on the website WS relative to FIG. 27 is useful for creatingreports that have data and statistics that are not dependent on or thatdo not utilize or list Doppler measurements of the type mentionedearlier. Alternatively and in another embodiment of the invention, thecharts and reports may also comprise Doppler data and statistics thatinclude the Doppler measurements and calculations provided by theDoppler System 800 described earlier herein. If this is the case, thenat blocks 458 and 460, the user can also select the specific Dopplerdata measurements or calculations, such as the distance from the basketfrom each shot, the player's release time, the release angle and theentry angle or arc at which the ball is being received in the hoop 14′,that will be included in the chart or report.

After the user selects the chart or report criteria referred to in block458 and 460 and/or the Doppler data or statistics, then the routineproceeds to block 468 as described earlier herein. Thus, it should beappreciated that reports or charts including the Doppler data andstatistics are optional and may be selected by the user when creatingthe charts or reports for comparison or for an individual player or teamof players. As mentioned earlier herein relative to FIG. 25 and blocks436 and 440 in that figure, note that all of the variables mentionedearlier therein may be picked in any combination or permutation and thesystem 200 provides means for doing so. As mentioned earlier, in oneform of the invention, the sorting variables may be presented on websiteWS as shown in FIGS. 46 and 51 with selection buttons or boxes (notshown) next to the variables for selection.

Advantageously, the system 200 and method described herein providesmeans, apparatus and methods adapted to enable shooting games andchallenges, including the challenges mentioned and described earlierherein, as well as real-time or non real-time challenges between oramong players of the same team or players of different teams andregardless of where those players are located or the time when they areshooting or the like. The system 200 and procedures and methodsdescribed herein also permit real-time competition and non real-timecompetitions between players of the same or different teams andregardless of where those players are located. By calibrating theejector 20′ in the manner described earlier herein and providing themeans and apparatus for saving, viewing and printing reports, includingcomparison reports, the user can compare himself or herself to others.

FIGS. 28A, 28B and 29 provide two illustrative shooting challenges orroutines. It should be understood, however, that other shootingchallenges are contemplated and the system 200 and methods describedherein enable users to develop customized shooting challenges for use byplayers on the same team or players on different teams, regardless ofthe geographic location of the players or the time which the playersshoot. In an alternative embodiment, the system 200 and method provide aprocedure for real-time challenge for two players who may use the sameejector 20′ at the same location. This procedure will now be describedrelative to FIGS. 28A-28B.

This procedure starts at block 500 wherein the first player or shooter,such as Player A, logs onto the ejector 20′ using the shooting logonprocedure described earlier herein relative to FIG. 22 . It is thendetermined whether one or more other players or shooters, such as PlayerB, wishes to challenge the first player and if not, then the routineproceeds to block 502. Then, the routine proceeds to block 504 where theuser proceeds to login and use the ejector 20′. If the decision atdecision block 502 is affirmative, then there is at least one or moreother players or shooters who wish to challenge the first shooter, andso, the routine proceeds to block 506 where the second shooter also logsinto the ejector 20′ using the procedure described earlier hereinrelative to FIG. 22 , as shown at block 506 in FIG. 28A. The shooterschoose their shooting locations (block 508), the time delay, such as onthe order of seconds, using the buttons 43 (FIG. 3B) on the interface 40(sometimes referred to as a time delay input area) as described earlierherein (block 510 in FIG. 28A) and the shooter(s) choose the number ofballs (block 512) that they want passed to each selected location orpre-programmed location (if a pre-programmed drill was selected). Insuch instances, the controller 32 delays each pass in accordance withthe selected delay. The Players A and B alternate shooting in theillustration. Player A first shoots at a location, then Player B and soon. After shooting is complete at a location, the ejector 20′ passes thenumber of balls to the next shooting location where Player A shoots,then Player B and so on. After Players A and B have shot at the secondlocation, the ejector 20′ launches balls to the next selected location.Thus, the system 200 has the players alternate after shooting the numberof shots at each location. It should be understood however, that thesystem 200 could have player A go through the entire program and thenhave player B shoot or it could have them alternate every shot.

As mentioned earlier herein, one feature of the embodiment beingdescribed is that the shooters can select any arrangement or order ofthe positions by actuating one or more of the plurality of buttons 41(FIG. 3A). The controller 32′ stores the selected locations and in theorder in which the buttons 41 (FIG. 3A) were actuated, thereby givingthe users the ability to customize the shooting locations and the orderin which the ejector 20′ will eject or launch balls to the shootinglocations. This has been found to be very advantageous when simulating agame condition. For example, a shooter may shoot the ball from the topof the key at position 8 (illustrated in FIG. 10 ) and then immediatelymove to another position, such as a position along a vector along the“0”. This simulates a game condition when the basketball 12′ hits a sideof the rim 14′ when a shot is missed and is deflected after a shot fromthe top of the key, straight toward a sideline. It may be important forthe player to practice shooting at both positions in that order and thesystem 200 and method described herein enable the players or shooters toselect positions along imaginary vectors, lines or direction extendingfrom the ejector 20′ in the directions identified by the numbers orlocations 0-16 in FIG. 10 in the illustration. For example, actuatingthe button 41 labeled “8” in FIG. 3A and then actuate the button 41labeled “0” on the interface 40, the ejector 20′ launches basketballsalong the vectors toward the position 8 (FIG. 10 ) and then toward theposition 0. As mentioned earlier, in one embodiment, the ejector 20′launches the number of balls programmed to each position in the orderthat the positions were selected using the interface 40.

At block 514 in FIG. 28A, the user presses the start button 70′ (FIG.3D) to begin the routine. At block 516 (FIG. 28A), the ejector 20′begins launching basketballs 12′ to the first shooter who shoots thepreselected “n” number of shots programmed at block 512 at the first ofthe shooting locations selected at block 508. The ejector 20′ saves eachshot that it senses being made using the sensor 33′ at each shootinglocation on the board or controller 32′, which stores the information inthe storage device 44′. Note that the ejector 20′ also saves and storesthe total number of shots taken on the storage device 44′.

When the first shooter is done shooting at each of the locationsselected at block 508, then the second shooter begins shooting “n”number of balls selected at block 512 at the various shooting locationsprogrammed at block 508. The ejector 20′ again saves this data alongwith the shots made as sensed by the sensor 33′ and the total number ofshots taken at each of the shooting locations programmed at block 508.When the next or other shooters is/are finished, the ejector 20′ beginsejecting balls to the first shooter at the next location that wasprogrammed at block 508. Again, Player A shoots shots at a spot 1, thenPlayer B shoots shots at spot 1, then Player A shoots shots at the nextspot, then Player B shoots shots at the next spot and so on.

Note that the ejector 20′ delays the time between each pass at ashooting location in accordance with that which the user programmed atblock 510. An additional delay time may also be used as in the firstembodiment described earlier herein to delay the time between which theshooter begins shooting basketballs when changing from one location tothe next location. For example, an additional delay time of five secondsmay be required for a player or the first shooter to move to the nextshooting location and the delay time that the user selected at block 510may not be sufficient to enable the player to get to the next position.Accordingly, the ejector 20′ controller 32′ may comprise an additionalpre-programmed delay time for ejecting basketballs 12′ when the locationof shooting changes.

The routine continues to block 518 (FIG. 28B) where after the selectedshooting workout is accomplished by the first shooter, second shooter .. . to the nth shooter, the ejector 20′ enters a standby mode. Thewinner of the challenge may be displayed on the display 45′ (FIG. 10 )by the user code or number assigned to the player. At block 520 (FIG.28B), the ejector 20′ displays the winner of the challenge as being theplayer with the most makes, thus the highest percentage of makes fromthe selected or programmed locations. Again, the controller 32′ of theejector 20′ causes the number associated with the shooter/player to bedisplayed along with his or her percentage of makes compared to theother shooter's percentages.

The routine proceeds to decision block 522 (FIG. 28B) wherein it isdetermined whether the same shooters want to do another shootingchallenge, and if they do, then the routine returns to block 506 asshown. If they do not, then it is determined (decision block 524)whether other shooters want to challenge one another to a shootingchallenge. If they do, then the routine proceeds to block 500 whereinother shooters can perform the shooting challenge. If they do not, thenthe procedure ends.

It should be understood that the procedure is not dependent on Dopplerstatistics or measurements or data provided by the Doppler System 800,but such Doppler data or statistics may also be incorporated into theshooting challenge. The system 200 can detect where ball is being shotfrom within a certain accuracy and require the second player or shooter,to retake said shot until he takes the shot from “about” (e.g., within afoot in the illustration) of the first shooter;s general shot distance.The system 200 notifies shooter of this by flashing timing lights orother notice on Display 45′ (FIG. 10 ) to make shooter aware that lastshot did not count.

It should be understood that the procedure described in FIGS. 28A-28B isa real-time challenge mode during which two or more players arecompeting against each other using the same ejector 20′. In anotherillustrative embodiment shown in FIG. 29, a shooting challenge isprovided for players from different teams at different locations. Forease of description, it will be assumed that at least one ejector 20′ islocated at two or more geographically distinct locations and they havebeen calibrated (as described relative to FIG. 21 ) for a first team,such as team A in the illustration, and a second team, such as team B,that is using a different or second ejector 20′ at a differentgeographic location. One or more players on team A shoot until theroutine ends (block 528). The data associated with one or more playersfrom team A shooting at the various positions are uploaded and stored onthe website WS server 206 (block 530) in the manner described earlierherein.

The second system 208 having an ejector 20′ launches balls to the sameor different positions that were pre-programmed or user-programmedpositions for the players on team B (block 532 in FIG. 29 ). One or moreplayers shoot until the routine ends (block 534) and then data andstatistics for the one or more players from the second team B shootingat the various positions are uploaded and stored on the website WSserver 206 as shown in block 536. It should be understood that theplayers from each of the teams A and B may shoot at the same time or atdifferent times. It should also be understood that in one embodiment,the players at the second location of team B may program the ejector 20′with the exact same pattern of programmed locations that were programmedby team A. Alternatively, the teams may program their ejector 20′ sothat they shoot at totally different locations or where only a fewlocations overlap, the statistics and data for each of the locations isgathered and stored cumulatively for each location by the system 208 sothat shooting data for various distance and locations are storedcumulatively and comparisons may be made over a period of time usingdata captured over a period of time.

Thus, the system 200 enables the users to compete in real-time or in nonreal-time because it is capable of collecting and storing data andstatistics, including Doppler data, associated with one or more shootingsessions and then accumulating and storing the data over time andstoring it on the website WS system and/or server 206. This isparticularly useful when using the Doppler data and statisticalmeasurements provided by the Doppler System 800 described earlierherein. In this regard, the Doppler measurements are captured, measuredand/or calculated by the microprocessor 910 (FIGS. 14 and 15A) andschematically shown as 32′ in FIG. 10 and may be stored on the websiteWS. Thereafter, a player's percentage of makes at numerous distances andpositions, may be stored, viewed, published, printed and the like. Forexample, FIG. 42 illustrates a scatter or mapping diagram and FIG. 43shows a report 600, both of which may be stored on the server 206 andused for competitions and comparisons as described herein.

Returning to the illustration in FIG. 29 , recall that it is presumedthat the players of team A are using a first ejector 20′ at a firstgeographic location and the players from team B are using the secondsystem 208 (FIG. 10 ) having second ejector 20′ at a second geographiclocation. At decision block 538 (FIG. 29 ), it is determined whethermore players from team A and/or team B are shooting in addition to thefirst players that have shot from those teams. If they are, then theroutine loops back to block 526 where the second and subsequent playersmay shoot from the pre-programmed positions. If not, then the shootingchallenge is complete for the teams A and B and the routine proceeds toblock 540 where it is determined whether other players from other teams(i.e., teams other than A and B) are shooting. If they are, then anejector 20′ which may be the first ejector 20′, second ejector 20′ or athird ejector 20′ located at a third geographic location launches ballsto the pre-programmed or user programmed position for the next team(block 542 in FIG. 29 ). The players shoot until the routine ends (block544).

Thereafter, data and statistics from the one or more players from thesubsequent team(s) at the various positions are uploaded and stored onthe website WS server 206 (block 546). If the decision at decision block540 is negative or after the data and statistics are uploaded and storedas described relative to block 546, the system 200 enables users, suchas teams, players, coaches and other interested parties, to view andcompare player and team statistics of one team, such as team A, againstthe player and team statistics for another team, such as team B or otherteams, as shown at block 548. The shooting challenge is then complete.Reports may be created and printed and the like as described herein.

As mentioned earlier herein relative to FIG. 20 , FIG. 27 , FIG. 29 andthe like, the system 200 provides means for saving, viewing, printing,publishing the reports comprising data and statistics, comparisons,competitions and the like. The user may access the website WS with aconventional internet connection using a computer (e.g., computers 202,204), smart phone or other smart device, such as an iPad, iPhone,Blackberry or the like. The user logs onto their account to access,publish, view and print out multiple detailed reports comparing localshooters' statistics and data, including but not limited to the numberof made shots, number of shots taken, percentage of made shots relativeto number of shots taken and comparisons of such statistics to a local,regional, national or international bank or data base of other shootersacross the region, state, country or the world. The comparison reportsand charts may be created on a cumulative basis, average basis and/orpercentile basis and can be sorted in any particular arrangement using aplurality of criteria, such as age, date, time, gender, distance orother criteria as mentioned earlier herein.

The system 200 also enables the players' statistics and data to bestored in the storage device 44′ (FIG. 10 ) coupled to the controller32′ and located on the ejector 20′ so that when a user uses the ejector20′, the controller 32′ can cause the shooting statistics and data forthe positions being selected to be displayed on display 45′ during ashooting session. For example, if a first player in Ohio has programmedthe ejector 20′ to shoot one or more balls to the location 8 beforebeginning the shooting session, the controller 32′ will cause theejector 20′ to eject or launch balls to the position 8. The ejector 20′may cause the display 45′ to display the position number (i.e., “8”),the historical percentage of made shots at the position 8 by the localplayer, the shooting percentage for that position based on eitheraverage, median totals or total shots for a work out depending on whatthe user prefers. Alternatively, the controller 32′ may cause apercentage of made shots at a position or location on a team-wide,regional, state-wide, national and international basis.

With the Doppler measurement capability provided by the Doppler System800, it should be understood that each of the positions 0-16 (FIG. 10 )in the example may be viewed as imaginary vectors having an originatingpoint associated with the ejector 20′ and which extend outwardly awayfrom hoop 14′ in the direction of the locations or spots 0-16. Onevector is illustrated in FIG. 10 and labeled V₁₃ for position 13. TheDoppler measurement system 800 enables Doppler measurements and data tobe captured at any position along the vector. For example, the DopplerSystem 800 enables the Doppler data and measurements to be capturedalong the base line vector position 0 at any distance from the ejector20′, such as three feet, three-and-a-half feet, four feet, . . . twentyfeet, etc. Typically, the Doppler will cease providing precisemeasurement data at about 35 feet. It should also be understood that theDoppler measurement system 800 rounds the measurements to the nearestfoot so that, for example, if the Doppler System measures a shot takenat ten feet, seven inches, it rounds the measurement to eleven feet forease of simplicity in comparisons.

As mentioned earlier herein, the server 206 (FIG. 10 ) comprises thedatabase 206 a on which the data and statistics have been uploaded tothe website WS are saved. The user may access the website WS in themanner described earlier herein and then may generate the variousreports, charts, comparisons and the like as described herein relativeto FIG. 27 . Some of these reports and charts will now be illustrated.

One illustrative report is shown in FIG. 42 wherein the individualshooting statistics report, scatter or mapping diagram for a particularshooter, Kevin Curtis in the illustration, is shown. Note the shootingpositions 0-16 in the report and the Doppler data or statisticsassociated with the player's shooting. Thus, notice in the illustrativereport shown in FIG. 42 that distance data measurements or calculationsfor a plurality of locations have been rounded off to the nearest foot,which are shown and labeled 602 in the illustration. The system 200 andthe controller 32′ and shooting efficiency calculator 32 b′ (FIG. 10 )uses the Doppler measurement system 800 which measures, senses and/orcalculates the measurements of the various distances and the sensor 33′is used to capture the number of made shots at each distance. Thecontroller 32′ and shooting efficiency calculator 32 b′ can thencalculate a makes percentage which is associated with each distancealong the vectors as shown. Again, one should understand that thevarious positions or shooting locations 0-16 may be considered asvectors along which the ball is ejected or launches by the ejector 20′and the Doppler System 800 captures the measurement from where theplayer caught the ball and shot the ball from. As mentioned earlierherein, the Doppler System 800 also enables the calculation of theplayer's release time, which is the time between the point in time whenthe player captures the basketball and then shoots it toward the rim14′. Other Doppler statistics, such as an arc of the shot as released bythe player and the entry arc of the ball 12′ as it approaches the hoopor rim 14′ are calculated by the Doppler System 800 as described herein.

The report 600 (FIG. 42, 42B) may be visually displayed on a displayassociated with the computer 202 or 204 or other device in the formshown. Of course, the unique layout of the scatter diagram or report 600provides the user with the means and ability to quickly view a player'sperformance at the various distances and positions on the basketballplaying area. Note that the report 600 has the percentages 604 listedfor each of the distance positions measured by the Doppler System 800.The report 600 may also be provided in a table format, such as a table606 in FIG. 43 . Note that the percentages are shown in the table alongwith the shooting area and the distance in feet as measured by theDoppler System 800 herein. For example, as illustrated in FIGS. 42 and43 , the shooter's percentage when shooting from fifteen feet along animaginary vector V₁₃ (FIG. 10 ) is 74%, as illustrated by the datalabeled 608 in FIGS. 42 and 43 . In contrast, the percentage fromfifteen feet along vector or location 4 is 77% as shown by the datalabeled 609.

Advantageously, the system 200 provides a convenient and easy means andprocess for gathering, calculating, displaying, printing or publishingshooting data and statistics regarding a player's shooting ability atone or more of the shooting locations. The Doppler measurements provideaccurate shooting measurements and comparisons because the playershooting, for example, along the vector V₁₃ (FIG. 10 ) associated withdifferent shooting positions 13. This is valuable and important becauseplayers may shoot along a common vector, but not at the same distancealong that vector. For example, one player may be shooting from sixteenfeet, while an opposing player or subsequent player or even the sameplayer may be shooting along the same vector V16, but at a shorter orlonger distance. Thus, unless the player was shooting from the exactsame distance along a vector V₀₋₁₆ from the ejector 20′, the comparisonscould be inaccurate.

Advantageously, the Doppler System 800 provides accurate measurements ofthe distances where the player(s) shoot the basketball from, and thesystem 200 collects statistics associated with each of those positionsand the controller 32′/microprocessor 910 (FIGS. 10, 14 and 15C)measures, calculates and stores the data and statistics associated witheach shot and its associated distance for use in creating the reports,comparisons and the like described herein. This feature of theembodiment provides for accurate analysis and comparisons of a player'sefficiency in shooting and also accurate comparisons of a player'sshooting efficiency and statistics when compared to one or more otherplayers from the same or different teams.

The report 600 in FIG. 42 and table 606 in FIG. 43 may be displayed andviewed by the user using conventional means such as the user's computer202, 204 or other device that the user uses to access the website WS.The report 600 and table 606 may be printed out and/or published in themanner described herein for use by the user.

It should also be understood that the reports for a team may also begenerated in the same format or in a different desired format. Also,shooting percentage comparisons may be made, for example, for a region,state, nation or the world and may be created by the user using thewebsite WS. The system, means and process for accomplishing this willnow be described.

If the user desires to upload sessions data, it will follow the uploadroutine described earlier herein relative to FIG. 25 . A representationor example of the “SESSIONS” file that is uploaded is shown in a formatthat is illustrated in FIG. 44 . Note that the file format comprises theplayer's identification number in the column 700, the player's name 702,the date the session occurred in column 703 and then the shootingresults from any of the shooting locations selected by the player oruser. Note that the table is broken out by showing each location (0-16in the illustration) being described and the total number of shots takenand made at each shooting of the shooting locations 0-16 in theillustration being described. For example, the report shows that theplayer Kevin Curtis (identified as “P214” in column 700) had a shootingsession on May 20, 2010, that lasted for 58.04 seconds. At position orshooting location 7, the player took seven shots, as indicated by thedata 706 in FIG. 44 and made five of those shots as indicated by data708 in FIG. 44 . Note that the player took a total number of nineteenshots and made twelve of those shots, as indicated by the data 710 and712, respectively. The last column in the sessions data file identifiedby the part number 714 refers to the specific player number thatdifferentiates each player in the data base no matter the team. In otherwords, 700 is the player number on that team and every team (user) couldhave a 223 as a log in number for their ejector; but when it is uploadedto the internet, it is the number in column 714 that relates to thisplayer and in the case of Joe Jones P223, his specific number tagged inthe database is 19 in the illustration. In the illustration beingdescribed, the “SESSIONS” data file is a comma separated value file andwill not have the actual first six rows illustrated in FIG. 44 .

If the “SESSIONS” data includes Doppler measurements or calculationsgenerated by the Doppler System 800, then the “SESSIONS” data file willinclude additional data as illustrated as shown in the FIG. 45 . Notethat in this “SESSIONS” data file the ejector 20′ collects or calculatessix data points or facts including: 1) the shooting location, 2) thedistance of the shot taken, 3) whether the shot was a make or miss, 4)the player's release time, 5) the player's release angle and 6) theentry angle into the hoop 14′. In the illustration being described, notethat the player P223, Joe Jones, had a shooting session on May 20, 2010,and that his first shot, indicated by the column 720 in FIG. 45 , showsthat the shooting location was 0, corresponding to a base line shotidentified by the location number 0 in FIG. 10 . The column of data 720also shows that the distance of his shot in feet was fifteen feet andthat he made the shot, identified by the number 1 which represents amade shot (the number 0 represents a miss). The report shows theplayer's release time for the shot was 0.301 seconds, his release anglewas 55° and the entry angle of the ball to hoop 14′ was 45°.

Advantageously, a user, such as a coach, may note that the releaseangle, which represents the angle at which the player released the ball12′ toward the hoop 14′, was 55°, but the entry angle was much shallowerin that it was 45°. It may be a coach's desire to improve the player'sentry angle to increase the probability that the basketball willapproach the hoop 14′ at a desired angle and thereby improve theplayer's probability of making the shot.

Note that the “SESSIONS” data represented in FIG. 45 shows the data foreach and every shot taken by the player with the last column identifiedby the arrow 722 representing the last position of the last shootinglocation. Note that during any shooting session, the player may shootfrom different positions. In the illustration shown in FIG. 45 , JoeJones shot in a serial order from shooting location 0, 1, 2, 3, 4 to thelast shot taken, whereas in comparison, the player, Kevin Curtis, whohad a shooting session on the same day, but he took all shots from theshooting location 8 in the illustration being described. Note also thatthe Doppler System 800 enabled the measurement and calculation ofdistances, release time, release arc or angle and entry arc or angle asshown. For example, Joe Jones shot at shooting location 0 from fifteenfeet whereas at the shooting location 2 he shot from sixteen feet, asshown in FIG. 45 . His corresponding release time, release angle andentry angle are different as well. Obviously, the Doppler measurementsprovide a user, such as a coach or trainer, extremely useful data intraining a player to play basketball and to score.

As described earlier, once the sessions data is uploaded from theejector 20′ or a computer, such as computer 202, 204, to the website WSserver 206, the information can be used, evaluated, saved, viewed,stored, printed, published and the like. The following are somerepresentative charts or reports that are selectively generated by thesystem 200 for use by the user.

FIG. 46 is a listing of the sorting variables that are presented to theuser using drop down menus (not shown) in a graphical user interface.For example, all could be drop down decision boxes so if they weresorting on age, and did not want any above 10 years old, they wouldenter 10 in the box instead of “Any” and so on for the others. In theembodiment in FIG. 46 , the sorting variables include:

Headings Quantifiers Explanation of Quantifiers 1 Choose Player RosterList Chose any player on your roster or entire team 2 Minimum Age Anyrange from 1-150 <= Maximum Age 3 Maximum Age Any range from 1-150 >=Minimum Age 4 Beginning Date All Beginning date <= Ending date 5 EndingDate All Ending date >= Beginning date 6 Gender Both, M, F Male, Femaleor include all shooters 7 Enter Shooting All 0 through 17 Locations 8Chart Type Makes/Total Sort based on makes, total Shots/% shots orshooting % 9 City All Choose City 10 County All Choose County 11 StateAll Choose State 12 Country All Choose Country

Once the user accesses the website and selects one or more of thesorting variables to be used in the report, the report accesses thewebsite and is created in the manner described earlier relative to FIG.27 .

FIG. 47 illustrates an example where a user has selected variouscriteria for John Drew the website WS created the report 730 shown inFIG. 48 . Thus, in the illustration, the user selected the player JohnDrew, the minimum age and the maximum age, 14 years and 25 years,respectively. The beginning and ending dates indicated in the example inFIG. 47 and the rest of the variables or criteria as illustrated in FIG.47 . In response, either the computer 202, 204 or and the website WSgenerated and displayed the chart or report 730 (FIG. 48 ). As mentionedearlier herein, the user may elect to publish this report or chart ormay save it or print it out for use by him or others.

In the illustration in FIG. 48 , the total shots for the criteriaentered show the player John Drew to be ranked thirteenth when comparedto other shooters around the world. In the illustration being described,the total shots shown in this report represent the total number of shotstaken by a player at all shooting locations, which are the shootinglocations 0-16 in the illustration being described. In this regard andas mentioned earlier, while the description herein has identified 0-16locations, it should be understood that more or fewer locations may beprovided on the interface 40 (FIG. 3 ) and programmed into the system200 so that there are more or fewer identified shooting locations,respectively.

FIGS. 49 and 50 illustrate another example where a user has selectedcriteria including the entire team “Sangre” and identified all ages anda beginning date and an ending date. The user selected the shootinglocation 8 and identified the chart type as total makes, and the stateand geographic territory as being All Cities and Counties within theState of Colorado. Note the resultant report 740 (FIG. 50 ) ranks theSangre team second in total number of made shots at location 8 for theColorado male teams. In this regard, note that the input informationalso includes gender, as illustrated in FIGS. 47 and 49 so that the datacan be further sorted and organized based upon gender, as well asplayer, team and the other variables shown in the illustrations.

The examples illustrated in FIGS. 47, 48, 49 and 50 were not dependentupon or include Doppler measurements. In another embodiment of theinvention, Doppler dependent measurements are provided and someillustrative examples of the input variables and reports generated willnow be described.

It should be appreciated, again, that any number of reports andcombinations of reports using one or more of the variables or criteriashown in the preceding and subsequent illustrations can be used. Inother words, reports and charts may be created using any number ofcombinations or permutations of the input criteria or variablesdescribed in FIGS. 46 and 51 . FIG. 51 illustrates the plurality ofvariables or criteria 742, which include Doppler measurements that maybe presented to the user from the website WS and made available forselection. Note that the criteria or variables include:

Headings Quantifiers Explanation of Quantifiers 1 Choose Player RosterList Chose any player on your roster 2 Minimum Age Any range from 1-150<= Maximum Age 3 Maximum Age Any range from 1-150 >= Minimum Age 4Beginning Date All Beginning date <= Ending date 5 Ending Date AllEnding date >= Beginning date 6 Gender Both, M, F Male, Female orinclude all shooters 7 Enter Shooting All 0 through 16 Locations 8Shooting All 13, 14, 15, 16, 17, 18, Distance 19, 20, 21+, all 9 ChartType Makes/Total Sort based on makes, total Shots/% shots or shooting %10 City All Choose City 11 County All Choose County 12 State All ChooseState 13 Country All Choose Country

Thus, the criteria or variable entries are provided to the user and theuser can select the variables to create any type of chart desired basedupon the variables selected. For example, FIG. 52 shows and illustrativeselection of variables. In this example, John Drew was selected with theminimum/maximum ages indicated in the FIG. 52 , and the other variablesor criteria shown and described were selected. In response, thecomputer, such as computer 202, 204 or website WS created and generatedthe chart or report 743 which system 200 (FIG. 10 ) generated inresponse to the variables or criteria selected. Note in the illustrationbeing described, the user-selected input criteria, shown in FIG. 52 ,that a shooting distance of twenty feet away from the hoop 14′ wasselected and a total shots taken at all locations (one or more of thelocations identified 0-16 in FIG. 10 and on the interface 40 in FIG. 3). Note that the player chosen in the example was John Drew and in thereport, it shows that John Drew of the Sangre school or team wasthirteenth in total shots taken from all shooting locations of adistance of 20 feet between the dates Jun. 1, 2009 to Dec. 15, 2010 formales ages 14-25 in the illustration being described.

Another example is shown in FIGS. 54 and 55 . Notice the inputinformation shown in this example of FIG. 54 identifies a team,“Sangre”, the position 8 and the distance of fifteen feet. The charttype was identified as “Total Makes” in the drop-down menu screen. Theresulting chart or report 744 created by a computer, such as computer202, 204 or website WS in response to this input information of FIG. 54is illustrated in FIG. 55 . Again, it shows the Sangre team's totalmakes for all dates for the shooting location or position 8 at adistance of fifteen feet along the vector defined by a line between theejector 20′ and the position 8 shown in FIG. 10 . In the illustrationbeing described, the position 8 is at the center of the top of the keyor an imaginary line bisecting and radially extending from a center axisof the basketball hoop 14′ perpendicular to the backboard 16′.

Thus, it should be understood that the user can identify and select anycombination or permutation of criteria or variables and the computer,such as computer 202, 204 or website WS will generate the correspondingreport or chart for display, viewing, saving, printing, exporting,publishing and the like.

FIG. 56 illustrates a comparison chart or report showing a list of thetop twenty rankings for shooters using an ejector 20′ on a given day. Inthe illustration being described, the day was Dec. 15, 2011, and thechart shows the top twenty national rankings. In the illustration beingdescribed, the team Upper Sandusky, Ohio generated this chart using thesystem 200. Note that its player identified at row 2 of the ranking wasidentified as T. Tedford of Upper Sandusky, Ohio who had a total numberof shots taken of 7,644 as illustrated in the chart 750 in FIG. 56 .

FIG. 57A illustrates a chart or report based on total shots made by theplayer and also illustrates player T. Tedford being ranked second amongall shooters in the nation as illustrated in the report 752 shown inFIG. 57A. Note in the examples being described in FIGS. 56 and 57A-57B,the user of the system 200 identified or selected to show the nationalrankings for the team Upper Sandusky, Ohio. The top twenty players areindicated in the reports 750 (FIG. 56 ) and 752 (FIG. 57A), while therest of the Upper Sandusky, Ohio team players and their associatedranking are identified as 750 a (FIG. 56 ) and 752 a (FIG. 57A) of thereports.

FIGS. 57B and 58 illustrate additional exemplary reports. FIG. 57Billustrates the ranking based upon percentage of shots made, indicatingthat M. Watson, for example, of the team Upper Sandusky, Ohio shot99.85% and was second in the national ranking as illustrated in thechart or report 754 in FIG. 57B. Another exemplary report 756 is shownin FIG. 58 wherein a top twenty national rankings for the team UpperSandusky, Ohio is shown. This illustration in FIG. 58 shows the list ofrankings using the ejector 20′ for a given age range, minimum agesixteen and maximum age eighteen in the illustrative chart shown in FIG.58 . Note that the player T. Tedford of the Upper Sandusky, Ohio teamranked second with total shots taken of 993,343.

In still another example shown in FIG. 59 , another report 758 is shownas being generated based upon the top twenty rankings for shooter'susing the ejector 20′ during a particular date range. In theillustration being described, the date range selected by user was Dec.23, 2011-Dec. 22, 2012. Note that for that year and date range, T.Tedford of the Upper Sandusky, Ohio team was also ranked second with theidentified number of shots, total shots taken being the same as in theillustration shown in FIG. 58 .

Advantageously, the system and method, again, permits sorting andcomparisons based upon using Doppler measurements and without Dopplermeasurements and using any number of combinations or permutations ofselected criteria or variables. In the illustration being described,several pre-programmed standard reports or chart formats are provided orgenerated by the website WS. In this regard, the following charts orreports are provided for use by the user:

Type of Chart Description Total Makes provides a chart based on totalnumber of shots made at a location or distance (with or without Dopplermeasurements) Total Shots Taken provides a chart based on total numberof shots taken at a location or distance (with or without Dopplermeasurements) Percentage of Shots Made provides a ranking and comparisonbased upon the shooting accuracy of the player, namely, the total shotsmade over the number of shots taken (with or with Doppler measurements)

Again, as mentioned earlier herein, the comparisons can be made on aplayer basis, on a team basis and such comparisons can be made versusother players on the same or different teams, other geographic regions,such as city, county, state, national, international, age range, daterange, gender and the other variables mentioned earlier herein relativeto FIGS. 46 and 51 .

The system 200 may provide other formats of charts as well. FIGS. 60-63illustrate various examples of such charts. In FIG. 60 , a chart showingthe rankings for a particular shooting area was generated by the user.In the illustration shown, the chart was generated for a player, namelyKevin Curtis of the team Upper Sandusky, Ohio, and it shows his rankingcompared to various geographic areas such as on his local team in thearea 760 a, regional compared to his ranking regionally (e.g., in thecounty in which his team is located) at area 760 b in the chart orreport 760. His statewide rankings, national shooting rankings andinternational shooting rankings are also shown in the areas 760 c, 760 dand 760 e, respectively. Note that the charts in each area 760 a-760 eshow the total shots made and the shooting percentage and his relativeranking based upon those criteria for the day (Dec. 15, 2011 in theillustration), week, month, year and even lifetime as shown in thecolumns indicated in report 760 in FIG. 60 .

FIG. 61 illustrates still another exemplary report or chart 770. In thisreport, the player or team shooting percentages are presented forcomparison to the local teams, regional teams, statewide teams, nationalteams and international teams as illustrated. Similar to the report 760in FIG. 60 , the chart 770 shows the rankings for total shots, totalshots made, shooting percentages for the day, week, month, year andlifetime for the player when compared to a local shooting team (area 770a in FIG. 61 ), a regional team (such as all teams in a particulargeographic county in area 770 b in FIG. 61 ), statewide (area 770 c),nationwide within a nation, such as the United States of America (area770 d) and internationally in area 770 e of chart 770 in FIG. 61 .

FIGS. 62 and 63 illustrate yet another exemplary embodiment of chartsthat may be generated using the system 200. In this embodiment, a chart772 is shown. In the embodiment shown in FIGS. 62 and 63 one of thevariables used for comparison is one or more Doppler measurements. Inthe illustrative chart 772, which was created by the user usingstatistics website WS, the chart 772 shows the player or team versus thenational shooting report. Note in top area of the chart 772 a, the chartidentifies a particular distance which could also be any distancemeasured by the Doppler System 800. Thus, at the distance of fifteenfeet, the chart or report 772 was created for the player Kevin Curtis.Note that at a distance of fifteen feet, his statistics or rankings areshown in areas 772 b of the chart 772. Likewise, in the area 772 c hisregional rankings or statistics are shown, and his statewide statisticsare shown in the area 772 d. The national rankings or statistics for theplayer are shown in the area 772 e and the international data orstatistics are shown in the area 772 f as shown.

Thus, in this illustrative chart 772 in FIG. 62 , the player KevinCurtis' ranking was first on his team for total shots made from adistance of fifteen feet for the date Dec. 15, 2011, the week, the monthof December, but he was ranked second for both the year 2011 and overhis lifetime in comparison to other players on the team. Similarrankings and statistics are shown in the other areas 772 c-772 f.

Still another exemplary chart or report 774 is shown in FIG. 63 . Inthis illustrative embodiment, the shooter selected a single shootinglocation, shooting location 8 in the illustration being described, andthe Doppler measured distances of fifteen to nineteen feet. Again, theuser selected a player, Kevin Curtis in the illustration, and hisrankings are listed in the chart or reports 774. In this regard, notethat his local shooting statistics compared to other shooters on histeam is shown in the area 774 a, regional shooting rankings orstatistics in the area 774 b, statewide shooting rankings or statisticsin the area 774 c, nationwide shooting rankings or statistics in thearea 774 d and international shooting rankings or statistics in the area774 e of the chart 774. Again, the preceding charts and reports areillustrative, and it should be understood that other shooting locations(0-16 in the illustration being described), distances or other criteriacould be selected to generate other reports or charts.

Advantageously, the system and method described herein enable the userto gather, collect and analyze shooting data and use that shooting datato compare a player or a team's shooting efficiency and ranking versusother players or teams on a local, regional, statewide, national or eveninternational basis. Using the information, a coach can focus the playeron practicing shooting on different areas and with different techniquesto improve the player's efficiency. The generation of these reports willgreatly improve a shooter's efficiency based on two primary, butdifferent reasons. First, the actual data can be studied and a user(both coach and shooter) can find areas that need improvement, whetherit be more or less shots at that giving location or if the user isstruggling on a certain side of the court, a coach may devise a gameplan that would keep the user from shooting from those locations.Secondly, a player or coach will be able to see what others are doingand compare his body of work to theirs. This becomes a competitionbetween users and thus more and more shots are taken and tracked sincetypically users of this machine are competitive. This collection of datacan then be reviewed at a later time by users, including the player P,the coaches who advise the player P or other third parties in order toassess and improve the performance of the player P. In this regard, thecollection of data can be made available to select other interestedparties, such as players and coaches on other teams of a basketballleague with which the player is affiliated, for example. Each individualplayer or a collection of players on a team or at a given school or clubcan maintain the website WS on which the statistics and data describedabove are posted. This posting allows a world-wide comparison of theperformances of the players among themselves, their coaches, associates,and rivals. The system 200 also permits competitions among players,teams and the like.

Advantageously, the system and method permit gathering and configuringshooting statistics of the shooter and team across any territory, suchas the United States, via the website WS and various graphical userinterface showing graphical tables, charts and illustrations (notshown), on the website WS, with the data and statistics beingdownloadable, printable and/or visible for comparison. For example, thecomputer 202 (FIG. 10 ) may communicate with the remote computer orserver 206 or a computer associated with a remote launcher 204 to causeplayers at remote locations to shoot the same shots. The data andstatistics from those shots are collected and stored on, for example,computers 202 and server 206 and may be uploaded and stored on theserver 206 associated with the website WS. Players, coaches and otherinterested parties may then view the data and statistics for comparisonby visiting the website WS. For example, Player A from University X maycompare his statistics to Player B from University Y. This enablesvirtual play, practice and comparison among at least one or a pluralityof players on the same team or different teams and thereby enables ateam to compare their data and statistics to one or more other teams.

Comparisons can be done in real-time, thereby allowing a plurality ofplayers at remote locations, for example, to directly compete againsteach other in real-time if desired. For example, a given pass (in termsof speed, direction, and inclination angle) in FIG. 10 is made to PlayerA, who catches it and shoots. His performance data is recorded on theejector 20′ or by computer 202 associated with that ejector 20′ onstorage device 44′. The computer 202 or controller 32′ controlling theejector 20′ which launched the pass to Player A informs (e.g.,wirelessly, directly or via website WS) the remote launcher 20′ in aremote system, such as system 200 in FIG. 10 , of the characteristics ofthat pass. The remote computer 204 then makes an identical pass toPlayer B using the remote ejector 20′, and the two computers 202, 204and website WS allow an immediate comparison of the performances of thetwo players on those computers or on the remote website WS. For example,ejectors at different locations could be online and a prompt (not shown)on each machine allowing a shooter to challenge a remote shooter onanother machine. When the challenge is accepted, the challenger programshis ejector and that program automatically programs (via the Internet)the remote ejector. The challenger then starts his ejector and the realtime challenge begins. The results may be displayed on display 45′ (FIG.10 ).

Additional Advantages or Considerations

1. It is contemplated that the data can be made available on othernetworks as well. For example, an intra-net can, in effect, beestablished, either by direct communication lines, or by using theInternet for communication, but by restricting access, as by usingpasswords. In this case, the data is not made available publicly, but toa limited audience. As a specific example, the data can be held in aremote or local server and made available through a dial-up line orother conventional communication link, such as a wireless link, tospecific parties, such as members of a player's P league, members ofother teams in any league, across the United State or anywhere aroundthe world. In effect, the server 206 or website WS may deliver a displayvia a graphical user interface (not shown), an electronic or hard copyreprint of the data, although extensive, on demand to a limitedaudience.

2. In one embodiment, the data and statistics can be presented visually,such as by the scatter diagram 600 (FIG. 42 ) superimposed over a bird'seye view of a basketball court. The scatter diagram 600 indicates thearea at each point where a shot 604 was taken, and indicates thedistance, number of shots taken, the percentage of shots which scoredand the like percentage which scored as swishers.

The statistics, data, reports and charts, or a selected subset of them,can be stored and printed for the player P when he finishes a practicesession.

3. It was stated above that, after a launch of the basketball 12′ byejector 20′, the speed of the basketball 12′ is computed and when thespeed drops to zero, it is concluded that the player P has caught thebasketball 12′ at that time. However, if the player P is moving when thebasketball 12′ is caught, the speed may not drop to zero. Therefore, inone embodiment of the invention, the basketball 12′ catch is concludedwhen the speed of the basketball 12′ drops below a threshold. Thatthreshold can be based on an average running speed of a player P, underthe reasoning that a basketball in flight has a significantly higherspeed than that running speed. Then, when a player P catches such abasketball 12′, the speed of the basketball 12′ will abruptly beconstrained to conform to the player's P running speed. Thus, when theflight speed of the basketball 12′ changes to the running speed of aplayer P, a catch may be concluded.

4. The speed of the basketball 12′ along its flight path running fromthe ejector 20′ to the player P need not be constant. Thus, a moreaccurate computation of distance will (1) break the flight path intosegments, (2) compute a speed S for each segment, (3) assign a time T toeach segment, (4) compute a distance for each segment as S×T, and (5)compute a total distance as the sum of the distances for all segments.

5. In one embodiment of the invention, the actual, precise distanceoccurring between a player P and the ejector 20′ is not necessarilyalways the most important variable. Rather, the response of the player Pat a given location to a given pass is considered a paramountconsideration. The player's P location is deduced from measured data. Ina precise technical sense, the basketball 12′ in FIG. 10 which islaunched by the ejector 20′ will not maintain a constant speed. Further,the flight path followed by the basketball 12′ will usually, but notalways, resemble a parabola, but will not be a precise parabola becauseof the changing speed. Therefore, multiplying the measured speed of thebasketball 12′ by the time of flight will only give an approximation ofthe length of the flight path. This length is not the same as thedistance from the ejector 20′ to the player P, although a goodapproximation of distance can probably be derived from the measuredspeed and time. The algorithms presented and described relative to FIGS.13A-13I enable calculations of such distances.

Nevertheless, one embodiment of the invention is not necessarilyconcerned with precise measurement of these parameters. Rather, oneembodiment of the invention is concerned with repeatability of thechallenge presented to the player P by each pass. That is, the inventionknows the release angle, θ_(r) at which the basketball 12′ is launched,together with the compass direction of the launch. In addition, theinvention knows the initial speed of the basketball 12′. These threeparameters (ball speed, inclination angle, and compass direction) allowa given launch, or pass, to be repeated accurately. Thus, the same passcan be presented to the same player at different times and to differentplayers at the same or different times and/or at the same or differentplaces. The players' responses to the challenges can be measured, interms of hold times and accuracy of their shots, recorded and thencompared as mentioned earlier.

In regard to comparisons, because the players' responses are determinedas provided herein, the player(s) responses can be compared in ameaningful way. This is despite the fact that the actual distance fromthe player P to the ejector 20′ may not be known with high precision.

From another perspective, the flight distance of the pass made by theejector 20′ can be considered secondary data. The flight distance iscomputed, based on measured data, but the more relevant information liesin the detailed characteristics of the pass made by the ejector 20′.

One goal or use of another embodiment may be to reproduce a given typeof pass, for a given player or for comparison between multiple players.This reproduction can be made by repeating the ejector's 20′performance, in terms of (1) ball speed, (2) entry angle, (3) releasedirection, and so on. It is not necessary to work backward from thecomputed travel distance of a given pass in order to reproduce thatpass.

Thus, from this other perspective, the measured information, such asdistance of a pass delivered by the ejector 20′, is a usefulapproximation to the player P from the ejector 20′.

6. Another consideration is that there are significant differencesbetween the system 200 and prior art ball throwers, such as a baseballor tennis ball throwers. These differences include:

a) A typical women's basketball weighs about 20 ounces and a men's 22ounces. Tennis balls weigh about 2 and 2 1/16 ounces and a baseballweighs about 5.13 ounces. One form of the invention launches abasketball with a velocity of about 30 feet per second at maximum springsetting. A baseball pitch traveling 100 miles per hour travels roughly150 feet per second, as does a similar tennis ball. Because thebasketball 12′ travels at a significantly lower speed, compared to abaseball or tennis ball thrower, for example, from a baseball or tennisball thrower machine (not shown), the basketball player can makereliable and repeatable catches of a launched basketball 12′ in abare-handed manner. As one specific example, the player can reliably andrepeatably catch, bare-handed, the basketball 12′ pass every ten secondsfor ten minutes. That is not possible with a high speed baseball pitch,for example.

b) The basketball player catches and holds, at least momentarily, thelaunched basketball 12′, and then makes a shot. That is not intendedwith baseball pitches and tennis ball passing machines.

c) The basketball launcher has associated equipment which calculates thedistance of the player from the launcher 20, 20′. That is not done withthe other prior art launchers that throw other balls, nor is there areason to do so.

d) The basketball player does not use a bat, racket, or other instrumentto strike the ball.

e) The basketball ejector 20, 20′ can require the player to move todifferent pre-programmed locations, to catch the ball. An automatedtennis ball passing machine may require the player to move, but that isnot done in baseball pitching, and, again, the player is not catchingthe ball, shooting and the ball launcher is not monitoring and measuringthe distance from where the ball is shot to a hoop 14, 14′.

f) The basketball ejector 20, 20′ does not impose side spin on the ball,in order to cause deviations in the ball's path, as is done in tennis orin a baseball “curve ball.”

7. Under one embodiment of the invention, a detection of (1) the speedof the launched basketball, (2) the entry angle, and (3) the releaseangle of the launched pass are all done without human intervention. Thisis different from having a database of basketball statistics that iskept and used. For example, the database may indicate that, in a givengame, player X caught a pass from player Z who was positioned at acertain location, and then player X scored a three-point shot. Again,system 200 stores this information and allows one to re-construct thepass using the ejector 20′ in FIG. 10 and without human intervention.

A similar comment applies to the detection of whether a shot scores agoal.

8. In Table V a listing of each component in the circuits shown in theFIGS. 15A-15D is provided. It should be understood that these are merelyrepresentative and other values and arrangement of components could beused and the invention is not limited precisely thereto:

TABLE V Component Type Value Available From C1, C2, C200, C201, ceramic.001 Digi-Key C205, C207, C217 Corporation of Thief River Falls, MN C3,C4, C202, C203, ceramic .1 Digi-Key C204, C206 Corporation of ThiefRiver Falls, MN C5, C8, C212, C213, tantalum 1.0 u Digi-Key C214, C215,C216 Corporation of Thief River Falls, MN C6, C7 ceramic .047 Digi-KeyCorporation of Thief River Falls, MN C9, C16, C17, C218, tantalum 4.7 uDigi-Key C219, C308, C303 Corporation of Thief River Falls, MN C301 COG2.0 u Digi-Key Corporation of Thief River Falls, MN C302 COG 1.0 uDigi-Key Corporation of Thief River Falls, MN C304 aluminum 20 uDigi-Key Corporation of Thief River Falls, MN C305 aluminum 47 uDigi-Key Corporation of Thief River Falls, MN C306 200 uF Cap Digi-KeyCorporation of Thief River Falls, MN C307, C311 tantalum 10 u Digi-KeyCorporation of Thief River Falls, MN C309 ceramic 330 pf Digi-KeyCorporation of Thief River Falls, MN C310 ceramic .22 u Digi-KeyCorporation of Thief River Falls, MN C312 ceramic .01 u Digi-KeyCorporation of Thief River Falls, MN D1 160-1087 LED-RED Digi-KeyCorporation of Thief River Falls, MN D4, D2 diode 1N4148 Digi-KeyCorporation of Thief River Falls, MN D3 160-1089 GRN LED Digi-KeyCorporation of Thief River Falls, MN D5 160-1088 YEL LED Digi-KeyCorporation of Thief River Falls, MN D205, D206, D207, D208, Schottky1N5711 Digi-Key D209, D210, D211, Corporation of D212, D300 Thief RiverFalls, MN L300, L301 308-1486 47 uH Digi-Key Corporation of Thief RiverFalls, MN Q1 PNP 2N3906 Digi-Key Corporation of Thief River Falls, MNQ2, Q3, Q4, Q5, NPN 2N3904 Digi-Key Q301 Corporation of Thief RiverFalls, MN Q300 Pchan IRFR5305 Digi-Key Corporation of Thief River Falls,MN R1 1% metal film 39.2 k Digi-Key Corporation of Thief River Falls, MNR2 1% metal film 43.2 k Digi-Key Corporation of Thief River Falls, MN R31% metal film  1.0 k Digi-Key Corporation of Thief River Falls, MN R4,R13, R16, R17, 1% metal film  100 k Digi-Key R25, R209, R214 Corporationof Thief River Falls, MN R5 1% metal film 750 Digi-Key Corporation ofThief River Falls, MN R6 1% metal film 2.49 k Digi-Key Corporation ofThief River Falls, MN R7, R302 1% metal film   2 k Digi-Key Corporationof Thief River Falls, MN R8, R9, R10, R20, 1% metal film   10 K Digi-KeyR22, R26, R204, Corporation of R205, R207, R212, Thief River R303,Falls, MN R11 1% metal film   33 k Digi-Key Corporation of Thief RiverFalls, MN R12, R14 1% metal film 8.45 k Digi-Key Corporation of ThiefRiver Falls, MN R15 1% metal film 1 meg Digi-Key Corporation of ThiefRiver Falls, MN R18, R19 1% metal film 249 Digi-Key Corporation of ThiefRiver Falls, MN R21 1% metal film 3.01 k Digi-Key Corporation of ThiefRiver Falls, MN R23, R28, R31, R317 1% metal film 4.99 k Digi-KeyCorporation of Thief River Falls, MN R27, R203, R208, R213, 1% metalfilm   1 k Digi-Key R301, R305 Corporation of Thief River Falls, MN R29,R32 1% metal film   15 k Digi-Key Corporation of Thief River Falls, MNR202 1% metal film 6.65 k Digi-Key Corporation of Thief River Falls, MNR206 1% metal film  4.9k Digi-Key Corporation of Thief River Falls, MNR210, R211 1% metal film  374 k Digi-Key Corporation of Thief RiverFalls, MN R216, R215 1% metal film 1.82 k Digi-Key Corporation of ThiefRiver Falls, MN R304 1% metal film 9.09 k Digi-Key Corporation of ThiefRiver Falls, MN R310 1% metal film 30.1 k Digi-Key Corporation of ThiefRiver Falls, MN OSC1 CTX306CT 20 MHz Digi-Key Corporation of Thief RiverFalls, MN U1 microprocessor 18F2520 Digi-Key Corporation of Thief RiverFalls, MN U4, U201 opamp TL074 Digi-Key Corporation of Thief RiverFalls, MN U5 digital pot MCP4013 Digi-Key Corporation of Thief RiverFalls, MN U6 Gunn MAC7801 MAcom available from Richardson RFPD, Inc. ofLaFox, IL U8 regulator MC7805D2 Digi-Key Corporation of Thief RiverFalls, MN U200 reference LTC1634smt Digi-Key Corporation of Thief RiverFalls, MN U204 serial driver MAX232A Digi-Key Corporation of Thief RiverFalls, MN U300 neg voltage LT1931AES5 Digi-Key Corporation of ThiefRiver Falls, MN

While the system, procedure and methods constitute preferred orillustrative embodiments, it is to be understood that the invention isnot limited to these precise methods, and that changes may be made ineither without departing from the scope of the invention, which isdefined in the appended claims.

What is claimed is:
 1. A system for assisting a user with creating acustom shots-made basketball practice arrangement, the systemcomprising: an ejector configured to launch basketballs toward each of aplurality of pass receipt locations located at a basketball playingsurface; a detector configured to detect made basketball shots; a userinterface for receiving a user selection of a subset of said pluralityof pass receipt locations for said custom shots-made basketball practicearrangement; and a control system configured to, in an automatedfashion, receive data from said user interface indicating said userselection and a number of shots to be made at each of said plurality ofpass receipt locations in said custom basketball shots-made practicearrangement, and command said ejector to launch said basketballs to aparticular one of said plurality of pass receipt locations in saidsubset until data is received from said detector indicating that saidnumber of shots is made at said particular one of said plurality of passreceipt locations, and subsequently and in response to said datareceived from said detector, cease launching said basketballs to saidparticular one of said plurality of pass receipt locations, and insteadbegin launching said basketballs to a second particular one of saidplurality of pass receipt locations in said subset.
 2. The system ofclaim 1 wherein: said user interface is configured to receive arevisionary user selection indicating revision of said custom basketballshots-made practice arrangement whereby said subset is revised toexclude at least one of said formerly included ones of said plurality ofpass receipt locations and include at least one new one of saidplurality of pass receipt locations prior to initiating the custombasketball shots-made practice arrangement; and said control system isconfigured to receive said further user selection from said userinterface and command said ejector to initiate said custom basketballshots-made practice arrangement in accordance with said further userselection instead of the user selection.
 3. The system of claim 1wherein: said user interface comprises a number of selectable passreceipt input locations provided at said user interface in a mannerwhich is visually congruous with said plurality of pass receiptlocations on a one-to-one basis.
 4. The system of claim 3 wherein: saiduser interface comprises a visual depiction of basketball court elementscomprising a three-point arc; and said selectable pass receipt inputlocations are spaced along said three-point arc.
 5. The system of claim4 wherein: said selectable pass receipt input locations are configuredfor individual, direct, and physical selection by said user at said userinterface by touch.
 6. The system of claim 5 wherein: each of saidselectable pass receipt input locations comprise a button.
 7. The systemof claim 4 wherein: said basketball court elements comprise a base line,a free throw line, and lane lines, wherein said selectable pass receiptinput locations are arranged in relation to said base line, said freethrow line, and said lane lines to visually correspond with saidplurality of pass receipt locations located at said basketball playingsurface.
 8. The system of claim 3 wherein: said control system isconfigured to track an order in which said selectable pass receipt inputlocations in said subset are selected and command said ejector to launchsaid basketballs towards each of said plurality of pass receiptlocations in said subset in said non-serial order.
 9. The system ofclaim 4 further comprising: a report generator in electroniccommunication with said detector and said control system and configuredto generate a report indicating user success in making basketball shotsat each of said plurality of pass receipt locations in said subset. 10.The system of claim 9 wherein: said report comprises percentages ofsuccessfully made shots for each of said plurality of pass receiptlocations in said subset visually depicted in relation to a secondvisual depiction of said three-point arc at positions visuallycorresponding with said plurality of pass receipt locations in saidsubset.
 11. The system of claim 10 further comprising: a dopplermeasurement system in electronic communication with said control systemand configured to determine, for each of said basketballs launched bysaid ejector, a height of shot, a release angle, and an entry angle intoa hoop of said basketball goal.
 12. The system of claim 1 furthercomprising: a selectable shots-per-location input area provided at saiduser interface and configured to receive a user selection of a number ofbasketballs to be passed to each of said plurality of pass receiptlocations in said subset, wherein said control system is configured toreceive said user selection of said number of basketballs to be passedto each of said plurality of pass receipt locations in said subset andcommand said ejector to pass said selected number of basketballs to agiven one of said plurality of pass receipt locations in said subsetbefore moving on to a next one of said plurality of pass receiptlocations in said subset; and a selectable time delay input areaprovided at said user interface and configured to receive a userselection of a number of seconds between passes of said basketballs tosaid plurality of pass receipt locations in said subset, wherein saidcontrol system is configured to receive said user selection of saidnumber of seconds between passes of said basketballs and command saidejector to wait said selected number of seconds after launching a givenbasketball before launching a next basketball.
 13. The system of claim 1wherein: said user interface is configured to visibly indicate each ofthe selectable pass receipt input locations selected by said user atsaid user interface to form part of said subset for said customshots-made basketball practice arrangement at each of said selectablepass receipt input locations in said subset.
 14. The system of claim 1wherein: said detector is configured for coupling to a rim of abasketball goal.
 15. The system of claim 14 wherein: said detectorcomprises a photo sensor.
 16. The system of claim 1 further comprising:a collection net assembly for collecting said basketballs as saidbasketballs are thrown towards said basketball goal and returning saidcollected basketballs to said ejector for launching.
 17. The system ofclaim 16 further comprising: a frame, wherein said ejector, saidcollection net assembly, and said user interface are connected to saidframe.
 18. A system for assisting a user with creating a customshots-made basketball practice arrangement, said system comprising: anejector configured to launch basketballs toward each of a plurality ofpass receipt locations located at a basketball playing area; a detectorconfigured to detect made basketball shots; a user interface comprisinga rendering of a three-point arc and a number of selectable pass receiptinput locations (“SPRIL”) arranged at spaced angular positions alongsaid rendering to correspond with said plurality of pass receiptlocations on a one-to-one basis, wherein said SPRIL are configured forindividual and direct selection by a user; a control system configuredto, in an automated fashion, receive data from said user interfaceindicating a user selection of a subset of said SPRIL corresponding to asubset of said plurality of pass receipt locations for said custombasketball shots-made practice arrangement and a number of shots to bemade at each of said plurality of pass receipt locations in said custombasketball shots-made practice arrangement, and command said ejector tolaunch said basketballs to a particular one of said plurality of passreceipt locations in said subset until data is received from saiddetector indicating that said number of shots is made at said particularone of said plurality of pass receipt locations, and subsequently and inresponse, cease launching basketballs to said particular one of saidplurality of pass receipt locations, and instead begin launchingbasketballs to a second particular one of said plurality of pass receiptlocations in said subset; and a collection net assembly to collectbasketballs thrown towards said basketball goal and direct collectedones of said basketballs to said ejector.
 19. The system of claim 9wherein: the report generator comprises a remote computer or server formaking the report electronically available at a remote electronicdisplay.
 20. The system of claim 18 further comprising: a remotecomputer or server in electronic communication with at least saidcontrol system and configured to make a report indicating user successin making basketball shots at each of said plurality of pass receiptlocations in said subset electronically available at a remote electronicdisplay.